| I've found docker hard to explain to people. To me the beauty of it is that one text file describes a build environment and you can pass it around quite easily to reproduce it. You can also tag it, sort of like a url or git branch and pass that around. So what happens is - someone needs to use your code, you can tell them how to install it on a system - but you also give them a docker file that is a working environment. Then, it's not your problem. They can look at the dockerfile and see what has been installed -- and also very important -- what is NOT installed. Another thing is that it helps with incremental development. You can build your environment via the dockerfile layer by layer and if a layer is broken or unnecessary, you can remove it without having to rebuild all the layers before that. In comparison, I've also used LXC containers and setting those up is more like installing a VM because there doesn't seem to be a dockerfile equivalent. That said, docker is confusing as the article alludes to, because there's a company trying to build a business model around it. What I'm talking about is: apt-get install docker.io
But docker the company is forcing two versions - a community edition and an enterprise edition. I tried it on macos and it had tons of telemetry too.They're also trying to control the namespace. For example, they don't let you have your own private registry, which is like a local dns server. It would break "the global namespace" and incidentally their business model. Redhat is wise to them, and their version of docker has --add-registry. If I was an enterprise customer, I wouldn't want my containers going out to the internet to get up-to-date (sometimes inadvertently). It makes runtime docker containers more sketchy |