Docker Images To Be Based On Alpine Linux (brianchristner.io)
New submitter Tenebrousedge writes: Docker container sizes continue a race to the bottom with a couple of environments weighing in at less than 10MB. Following on the heels of this week's story regarding small images based on Alpine Linux, it appears that the official Docker images will be moving from Debian/Ubuntu to Alpine Linux in the near future. How low will they go?
Systemd is a new init system whose primary advantage is that it promises to unify the behavior of services running on different linux distros. The problem that a lot of people (including myself) have with it is that since it unifies behavior, you lose choice in how you configure that behavior. In my organisation we've been using Debian for _years_ and upgrading our servers to the latest version has only ever involved minor tweaks to our config scripts. With Debian 8's systemd, we pretty much have to rewrite it all from scratch, which is going to be a huge, dangerous project. Of course, the trend of history is toward automation and standardization, but I think that systemd is too ambitious and too early. Only time will tell though.
I hadn't heard of Alpine Linux before today, being an old Debian guy. Besides the whole systemd thing, I've had the sense that Debian was loosing its way for a while and have been looking around for something to replace it when Debian7 reaches EOL. As a grey beard I want something light-weight and without systemd, but as a practical grey beard I want something stable, that I'll be able to run for another decade. So far, CentOS seemed to be the way of the future for my organization, although it makes me vomit in the back of my throat a little to go closer to the root of the systemd tree.
Make no mistake, though, Docker is the way of the future and will put a lot of people in this forum out of a job. If Alpine has the backing of Docker, it might be the linux distro of the future. It has some really interesting features, like the ability to save all of your system configuration into a package that you can install on other systems via the package manager. That's really cool, and a neat alternative to puppet. I'm not very happy that it isn't binary compatible with stuff built using glibc (which means that commercial software will be limited), and AFAICT it doesn't have some of the dev tools I like to use, but I think this will be a major contender soon.
I'll be watching it. It might
Really? You've never heard of Docker? Docker is a system that allows you to build "containers" for an application that contain all of its dependencies. Then you can deploy it on a machine where it runs as a VM, using its local copy of software and configuration if there is one, or the host's copy if not. It allows you to package applications that can run on any compatible server without interfering with other applications on that server. When you need to spin up a new machine, you can just copy the container over and the application and all of its configuration is automagically moved. It's awesome.
In the short term, Docker is going to change the way that every Linux system is administered. It will change the way that every Linux application is deployed. In the longer term, Docker will finally fulfill the promise of "write once, run everywhere"... linux, unix, windows, android; it won't matter any more. Docker is going to change the world.
In other words, its nothing new, but now with new added lack of security oversight because administration is hard and therefore worthless in todays race to the bottom.
The novelty comes from having a lot of tools to quickly maintain images and such. As you say, there's also 'dockerhub' to let you download canned application complete with OS libraries. The former I find to be handy, the latter I find problematic.
On the one hand, it can be a handy resource to dive into something to have a hands on example as you learn to deal with it yourself.
However, a few big downsides:
-Some projects have gotten very lazy about packaging. They make a half hearted or no effort to offer up distro packages, because 'hey, docker!'. I suppose this wouldn't be so bad, except for...
-As you say, these are various images with varying degrees of discipline in applying updates.
Complicating matters that even if you 'trust' a particular publisher, docker's infrastructure isn't exactly thorough about things like signing images and such. Updates become gigantic, because you are updating the entire OS even if one library needs a hand.
XML is like violence. If it doesn't solve the problem, use more.