Things move with incredible speed in containerspace.
As recently as October everyone, it seemed, loved them some Docker. You could also have been forgiven for thinking Docker was the only container game in town.
Docker itself only really gained attention in the latter half of 2014, following the debut of Docker 1.0 in June. But in the brief span from June to October, Docker thrived, with Red Hat adding supporting for it in the new RHEL 7 release, IBM publicly embracing Docker and containers, Amazon launching the EC2 Container service, and even the perceived competitor VMware announcing support for Docker in August.
And while Docker and containerization may not yet serve as substitutes for full-blown server virtualization, especially in terms of management infrastructure, open-source options like the Kubernetes Docker management system provide a glimpse of promise for containerization meeting the more advanced needs of enterprises in the future.
Containerization Competition Heating Up
But while the second half of 2014 saw a groundswell of support for Docker and containerization, now it seems the loving vibes for Docker aren't exactly unanimous. And there will soon be plenty of competitors to challenge Docker's container hegemony and give it a run for its money.
Who are we talking about? First, there's CoreOS, an open source lightweight operating system based on the Linux kernel and designed for providing infrastructure to clustered deployments. It seems that Alex Polvi, CoreOS's boss, is not at all happy with the direction Docker technology is heading.
"When Docker was first introduced to us in early 2013, the idea of a 'standard container' was striking and immediately attractive," he says in a blog posting.
"Unfortunately, a simple re-usable component is not how things are playing out," Polvi continued. "Docker now is building tools for launching cloud servers, systems for clustering, and a wide range of functions: building images, running images, uploading, downloading and eventually even overlay networking, all compiled into one monolithic binary running primarily as root on your server."
He adds that from a security (and composability) perspective, he believes the Docker process model is fundamentally flawed, as everything runs through a central daemon.
Then Polvi gets to the heart of the matter. "We should stop talking about Docker containers, and start talking about the Docker Platform. It is not becoming the simple composable building block we had envisioned. We still believe in the original premise of containers that Docker introduced, so we are doing something about it."
Rocket as a Docker Runtime Alternative
And what he is doing about it is building a new container runtime called Rocket as an alternative to the Docker runtime. It is, he says, designed for composability, security and speed. A prototype has been released on Github.
Ben Golub, Docker's CEO, responded to the Rocket announcement shortly after. While hoping to address some of the technical arguments posed by the Rocket project in the future, he rather diplomatically said:
"While we disagree with some of the arguments and questionable rhetoric and timing of the Rocket announcement [just before DockerCon, held in Amsterdam], we hope that we can all continue to be guided by what is best for users and developers."
But Rocket is not the only alternative container to Docker's. There are more. Many more.
Microsoft Entering the Fray with Drawbridge
Microsoft has announced that it will support Docker containers in its Azure IaaS system, and it will probably also support Docker on its PaaS when that supports Linux. Microsoft is also working on its own container technology, which for now is called Drawbridge. And that's likely to appear in Windows Server and Azure at some point in the not too distant future. Indeed, Mark Russinovich, Azure's CTO, has confirmed that the company is already using Drawbridge internally.
There's another Windows possibility presented by Spoon. "Spoon allows you to package applications and their dependencies into a lightweight, isolated virtual environment called a container," the company explains. "Containerized applications can then be run on any Windows machine that has Spoon installed, no matter the underlying infrastructure. This eliminates installs, conflicts, breaks and missing dependencies."
Spoon containers are built on top of the Spoon Virtual Machine, an application virtualization engine that provides lightweight namespace isolation of core operating system objects such as the filesystem, registry, process, networking and threading subsystems.
Canonical Launches Its Own Container System
Then not to be outdone, there's Canonical, which has announced its own container system called LXD for its Ubuntu Linux distro. LXD will also be integrated with OpenStack, the company says. (Docker was built on Linux Containers, or LXC; hence the name LXD.)
"LXC will be the client, LXD the server. Developers love LXC today for giving them almost instant lightweight container in which they can run a wide range of Linux operating environments. In the future, developers will run LXD on all the machines where they want to create and tear down these environments, and use LXC to drive the process from anywhere on the network," is how Canonical rather breathlessly explains the new initiative.
And let's not forget Flockport, which is championing LXC for containerization. "LXC is a container technology that gives you lightweight Linux containers, and Docker is a single application virtualization engine based on containers. They may sound similar but are completely different," is how Flockport explains it.
The whole container thing is rather reminiscent of the server virtualization world five or six years ago. Docker love may have exploded in 2014, and it appears poised for more growth and maturity in 2015, but Docker certainly won't be the only container game in town going forward.
When a good thing comes along, everyone — including Microsoft sooner or later — wants to get involved. And if that means choice and even competition, then so much the better.
Paul Rubens is a technology journalist and contributor to ServerWatch, EnterpriseNetworkingPlanet and EnterpriseMobileToday. He has also covered technology for international newspapers and magazines including The Economist and The Financial Times since 1991.
Forrest Stroud is a senior enterprise IT editor and writer with more than 15 years experience. Forrest has managed and written for some of the most recognizable technology content sites on the Internet, including ServerWatch, Webopedia, WinPlanet and Enterprise Storage Forum.