Live data from Hacker News

WTF is a container?

techcrunch.com

151–160 of 262 posts

Re: WTF is a container?

#151
post #117
post #92

Earlier quoted context omitted.

> Docker restricts the container to a single process only. No, there is only a single process treated as init in the container, but you can spawn off multiple child processes. > The default docker baseimage OS template is not designed to support multiple applications, processes or services like init, cron, syslog, ssh etc. If you want init, cron, syslog, ssh, and your app(s) all rolled up into one, you want a VM, not…

> No, there is only a single process treated as init in the container , but you can spawn off multiple child processes. It was extremely clear that the person who wrote the text you are replying to understands this as they specifically cover this fact with respect to using a service management daemon: you are just being pedantic with the wording to complain about this :/. > If you want init, cron, syslog, ssh, and yo…

You mean the way the parent('s quote) needlessly broke down an application into single-process containers, and finally breezes by "actually, you can" in order to spruik LXC instead, because 'multi-process'? Or the way the parent complains about not having init, but then says you can use something like runit?

I don't particularly like Docker and led my company's exodus from it, but the parent is being very slanted in their wording.

Re: WTF is a container?

#152
post #146
post #142

Earlier quoted context omitted.

There are legitimate reasons to not want to use C, but I find around here it's mainly reflexive hate and language zealotry. It's popular to hate on C (and C++) because the languages are so ubiquitous and long-used that a large body of terrible, unsecure, and poorly written code exists using them. Other languages haven't had the same success as these two yet, so haven't had their warts exposed enough to be dumped in t…

It was already clear in the late 70's and early 90's that C wasn't a reliable option to write safe systems. Dennis M. Ritchie himself on the history of the language[0] "To encourage people to pay more attention to the official language rules, to detect legal but suspicious constructions, and to help find interface mismatches undetectable with simple mechanisms for separate compilation, Steve Johnson adapted his pcc c…

Where is this mythical C++ community that promotes safe and auditable programs?

Whenever I'm forced to use a C++ program it's buggier than the C equivalent.

Re: WTF is a container?

#153

Earlier quoted context omitted.

I totally agree. The real issue is dynamic libraries and how hard it is to compile C/C++ code statically with GCC. If you could just pass `-static` to gcc and it actually worked like you expect this would never have happened. Fortunately that seems to be changing somewhat. Go is totally static, and Rust can easily be made totally static using muscl. You can even do totally static C/C++ apps fairly easily with muscl.

Dynamic libraries (in the C/C++ sense) only scratch the surface. Containers give you your own file system namespace (among other namespaces), which means all of the files that make up your complicated application unit can be put together and work together in isolation, separate from the machine's main file system.

Isn't that chroot jails?

Re: WTF is a container?

#154

Earlier quoted context omitted.

I totally agree. The real issue is dynamic libraries and how hard it is to compile C/C++ code statically with GCC. If you could just pass `-static` to gcc and it actually worked like you expect this would never have happened. Fortunately that seems to be changing somewhat. Go is totally static, and Rust can easily be made totally static using muscl. You can even do totally static C/C++ apps fairly easily with muscl.

Dynamic libraries (in the C/C++ sense) only scratch the surface. Containers give you your own file system namespace (among other namespaces), which means all of the files that make up your complicated application unit can be put together and work together in isolation, separate from the machine's main file system.

What advantages do file system namespaces have over separating by directories and users?

Re: WTF is a container?

#155
The reason people don't get the advantage of Docker is because there is a weird (and in my opinion stupid) tabboo against putting all of your deps in one container. This is about 10-100X easier than trying to compose a bunch of containers.

Not everyone can do that, but plenty of people could. Except they don't not because of some actual ops requirement (in many cases) but because they don't want someone to say they did it wrong.

I am assuming this situation has actually changed now I hope and swarm/compose or whatever is built in is not too hard to use?

Re: WTF is a container?

#156
post #124

Earlier quoted context omitted.

flabbergasted? Wow this is a new word for me, I have never heard of it. When i first read it in my mind I thought it was a Spanish Football player that used to play for Arsenal, Then Barcelona, and now Chelsea. LoL Is this word even used anywhere else beyond US? Never heard it used in the UK.

I'm from the UK and I hear "flabbergasted" reasonably often, more often from upper-middle class folks. Maybe a regional thing?

more of an age thing? I use it but I doubt my daughter ever does

Re: WTF is a container?

#157

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 configuring anything.

JVM is not everywhere by default or work without config by default for non trivial application. It is complex software which can lead to myriad classpath/ version issues related to jar files if not installed very carefully.

Re: WTF is a container?

#158

Earlier quoted context omitted.

Dynamic libraries (in the C/C++ sense) only scratch the surface. Containers give you your own file system namespace (among other namespaces), which means all of the files that make up your complicated application unit can be put together and work together in isolation, separate from the machine's main file system.

Isn't that chroot jails?

Yes, quite literally, in fact: https://github.com/opencontainers/runc/blob/ee992e5ff7143ea3...

Re: WTF is a container?

#159
post #141
post #45

Earlier 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…

Ok, throw Docker away. Did anybody have better experience with e.g. Rkt?

I really like: daemontools + static binary + setuidgid and maybe chroot.

Or mesos where everything needs to be in a tarball, which is extracted and sole program run.

If stuff is statically linked and related files (config, assets, ...) are part of bundle that can be chrooted, what is the value add of a container?

Re: WTF is a container?

#160

Earlier quoted context omitted.

No, but I do not see how it is related to my comment. Read more carefully. I didn't say that Jails and Zones did everything that Docker did, yeah DockerHub is cool and I gave them credits for that.

"nothing that we couldn't or haven't seen before"

[deleted]
Post reply on HN