Containers are often touted is this novel concept that's bound to revolutionise software development and software delivery in particular. The general idea isn't all that new however. Java Applications have been delivered as containers since 1995 (although the concept isn't explicitly named that way with Java applications). Each JAR / WAR is a self-contained application that can run anywhere where there's a JVM (which…
> Each JAR / WAR is a self-contained application that can run anywhere where there's a JVM (which is pretty much everywhere). Jar could be self contained or it could depend on 100s of other jars so it is not as straightforward as one assume. War required a Java application containers to be deployed which is outside a War not inside. Also J2EE deployments can get pretty complicated with its infamous XML usage for conf…
WTF is a container?
211–220 of 262 posts
Re: WTF is a container?
#212Earlier quoted context omitted.
Thanks for pointing out where the name confusion may have come from. > I definitely do not have time to check every person's profile when I comment on HN. At least then we should not make explicit such gender assumptions, regardless. I have never heard the name "Shawnee" and generally do not assume usernames on web forums are indicative of real-life anything (e.g. you are 'striking', but apparently that is not your n…
As a Polish immigrant, I personally think "singular they" is worse, because it creates ambiguity where there doesn't need to be any... which makes things a bit more confusing. Meanwhile, I think my proposed alternative is native to most other languages, and should translate fairly easily. I'm not sure I see the point in thinking this long and hard about pronouns, but to each his own.
But you're going to have to get used to the singular "they", because it seems to only be getting more common (historically, singular "they" was acceptable until the late 19th century, so the strictly plural "they" might be seen as a 20th century anomaly).
Re: WTF is a container?
#213Earlier quoted context omitted.
Distributed storage is still a big issue for sure. There are some options, but none are ideal. One option is to map to host and use NFS to share across hosts. Another option is to use something like Convoy or Flocker, which come with their own complexities and limitations. Hopefully more progress is made on this front. As for the wordpress app and other issues mentioned, it's actually very simple: nginx: build: ./ngi…
This is interesting. I'd been considering mounting drives for persistence of stateful data from containers. Let's say I want to run a Wordpress hosting service. In my ideal world, I deploy an "immutable" container for each customer, i.e. everyone gets an identical container with Wordpress, Nginx, MySQL etc. So what to do with state info, like configs and the MySQL data files? I'm thinking of mounting a drive at the s…
Re: WTF is a container?
#214Earlier quoted context omitted.
It's up to you to make your containers bloated or keep them slim. You can use the alpine versions of the official Dockerhub images. Python on Alpine is 30 MB (vs 267 MB for the debian one). https://hub.docker.com/r/library/python/tags/ You can create containers that are just a few MB with compiled languages like Go (5 MB). https://www.iron.io/microcontainers-tiny-portable-containers... From the article: "Rather than…
If your app is a compiled go binary (so, it runs anywhere) why do you need a container? The whole point of containerisation is to group installed dependencies (as opposed to installable dependencies like with a regular deb or rpm package) and configuration into a 'black box'. If your binary is already a single-file distribution, why lump it in with the crapfest that is docker?
Re: WTF is a container?
#215Containers are often touted is this novel concept that's bound to revolutionise software development and software delivery in particular. The general idea isn't all that new however. Java Applications have been delivered as containers since 1995 (although the concept isn't explicitly named that way with Java applications). Each JAR / WAR is a self-contained application that can run anywhere where there's a JVM (which…
> Each JAR / WAR is a self-contained application that can run anywhere where there's a JVM (which is pretty much everywhere). Jar could be self contained or it could depend on 100s of other jars so it is not as straightforward as one assume. War required a Java application containers to be deployed which is outside a War not inside. Also J2EE deployments can get pretty complicated with its infamous XML usage for conf…
Re: WTF is a container?
#216Earlier quoted context omitted.
> How is a container different from just installing all the dependencies along with an application? Once the image is built, you can get another installation that is guaranteed to be identical. You can do that with VM images too, but you can not reasonably do that if you try to install multiple applications side by side in a single VM without further isolation - there are too many ways they can interact. > Isolation…
> Try to get an application - statically compiled or not - to run across different Linux distributions, and you will see why this matters. Done. A statically compiled application has no other dependencies.
Re: WTF is a container?
#217Earlier quoted context omitted.
> This is especially true when your goal is supporting development teams: with something like Docker, normal users don't need root just to start a daemon on a privileged port or write to a couple of files. If you work in a large or security-conscious environment, that's a fairly big draw. On the contrary, any user that can run arbitrary containers (such as rootplease[0], for example) has root-level privileges on the…
What I was thinking about wasn't protecting against outright malice but rather mistakes and errors: If you give developers sudo access and you don't have an extremely diligent team with strong system administration experience, you're going to run into problems where people made incompletely documented changes or cause problems while working which aren't caught early enough – ever see someone break out sudo or chmod 7…
Why would you, though? A developer would at the very most require the application's privileges, not the super user's. And that's only really necessary when doing live troubleshooting.
Re: WTF is a container?
#218Earlier quoted context omitted.
Docker is a poorly engineered and over-hyped technology. The concept is great - and in fact, many companies have built great tooling around Linux cgroups. It lets you efficiently binpack applications on a single server - which is why 'containers' were created in the first place. The side benefit of letting you define your OS libraries, and other things, is a nice bonus, and way overblown in my opinion. Docker and its…
I think the real problem with Docker is Docker Inc. The pressures and constraints the company is under promotes the creation of new features that can be marketed and new software that competes with products from the competition. They have effectively no incentive on getting rid of bugs in the core product or to test features they do add exhaustively. Sooner or later someone actually using containers will produce a do…
They do however seem to be cutting so many corners technically, that the risk is they get undercut on their core offering.
Re: WTF is a container?
#219I remember going to AWS Reinvent last year and having some beers with a bunch of people who did devops. We started talking about tools, and they were utterly flabbergasted, that we had not embraced docker. They went on an on about how simple docker made HA, and handling fail overs/maintenance. More or less made it seem like it was the greatest thing since sliced bread. Me and a few coworkers decided to try and docker…
Did you identify that the software definitely did not leak on ubuntu? Or was it that it ran on ubuntu because it consumed swap?
Was it for sure a leak? I have an app that doesn't have back-pressure so when too many requests come in, it fills up memory waiting to push them all through to the slower database. Normally it uses 256m. Spikes make it hit 700mb. If I tell docker -m 300m, then the process gets 300m ram + 300m swap, so when it tries to use 700m it gets killed. I could tell it to use 350m and then it will run, but it would be swapping furiously.
Re: WTF is a container?
#220Earlier quoted context omitted.
Docker is just overhyped deal with it. There are some nice ideas, but nothing that we couldn't or haven't seen before. FreeBSD Jails and Solaris Zones exist for more than ten years. Where they addressed many things that Docker didn't.
Can you download a BSD Jail image from an application's website, and have it 'just work'?