A choice of containers

Everyone talks about Docker, but we know containers have been around long before it showed up and you should know that there are far more choices then Docker out there.

Make no mistake about it. Docker is very important. Docker’s libcontainer unified Canonical, Google, Red Hat, and Parallels on a single container library. Libcontainer exposes granular container features to applications and enables container programs to work much more seamlessly across different platforms. So, for example, libcontainer should enable developers to create containerized applications that can run not just on Docker, but also on other container technologies that support it such as LXC or OpenVZ.

“LXC? OpenVZ?” You ask. These are other important current container technologies, which compete with Docker. Here’s a quick summary of the other container technologies you might want to consider for your cloud.

BSD Jails: One of the oldest container technologies is still supported today. It seems to have few commercial deployments.

HP-UX Containers: Yes, HP-UX has its own container technology. It’s primarily used for PA-RISC emulation environments to support PA-RISC HP-UX apps on other HP architectures.

Linux V-Server: This Linux container technology relies upon a patched Linux kernel. The project seems to have run out of steam and is no longer being maintained.

LXC: Linux Containers has been around since 2008. It’s Linux’s ur-container. Docker, Google, and Heroku have all used it for the foundation for their container efforts.

LXD: LXC is being augmented by LXD, a container “hypervisor” with a new user experience for LXC. It’s made up of a system daemon, lxd; the shell client, lxc, and an OpenStack Nova plug-in. The project was only started in November 2014. While it has lots of big-time support, it’s still, at best, beta code.

OpenVZ: This container technology is the ancestor to LXC. It is also the basis of Virtuozzo, Odin‘s (formerly Parallels) commercial virtualization program.

Rocket: CoreOS thinks Docker the company is trying to stuff too many things into Docker the container. Their answer is a more simple, straightforward container technology. At this point, the program is little more than alpha code.

Solaris Containers: This Oracle Solaris technology is alive, well, and supports Oracle Solaris 8, Oracle Solaris 9 and Oracle Solaris 10 applications in containers, or Zones, in Solaris jargon.

Warden: This program is open-source Platform as a Service (PaaS) Cloud Foundry‘s answer to Docker. It is not based on LXC, the way many other Linux container technologies are. I’m not sure how viable Warden will be in the long run. Cloud Foundry’s Diego enables users to run either Docker or Warden containers on Cloud Foundry, and Docker has the momentum.

Workload Partitions (WPAR): IBM’s AIX container answer is primarily used to run AIX programs that were not supported on current versions of AIX.

There will be more container technologies. Bromium and Microsoft are both working on their own container takes.

For companies, the bottom line is that containers are still a very rapidly evolving technology. Docker has the lead, but other container technologies may end up being market leaders by the decade’s end.

Trackbacks

  1. […] cloud’s architecture. A useful compromise, and one I see many companies doing, is using containers and unikernals. By using either one, your applications can easily run on tens of thousands of nodes […]

    Like

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: