Docker 1.11 adopts Open Container Project components

Docker's participation in the Open Container project has come full circle, as the latest version of Docker is now built with components donated by Docker to the OCP

Docker 1.11 adopts Open Container Project components
Credit: flickr/Vasile Cotovanu

The biggest news about Docker 1.11 isn't features in the application, but that it uses component versions standardized under the aegis of the Open Container Project.

Last year, Docker donated the core of its runC runtime to the OCP as a basis for building container tools. The same went for containerd, a daemon or server used to control instances of runC. Docker 1.11 now uses the donated and publicly worked-on versions of those projects.

Docker is making this move to challenge the narrative that its container ecosystem is still dictated chiefly by Docker itself. It isn't donating its container specs and runtime details to the OCP merely for show; it wants the future development of the project to be as open-ended and inclusive as possible.

docker runc Docker, Inc.

Docker 1.11 has been reworked to use the runC and containerd components contributed to the Open Container Project. The runC engine can be swapped out and replaced if needed.

Two chief committers on runC are Docker employees, but committers from Virtuozzo (of Parallels fame), Red Hat's OpenShift and Project Atomic projects, Huawei, GE Healthcare, and Suse Linux have all been regulars as well.

The more visible changes in Docker 1.11 reflect this. Previously, the Docker runtime was the only one available within Docker, and critics felt this limited users' choices. The runc runtime is now swappable; while Docker ships with runc as the default engine, any other compatible engine can be swapped in. (Docker also wants it to be possible to do this without having to kill and restart currently running containers, but that's an improvement scheduled for later.)

Docker is making a case for this OCP-based development process as an inherently better method to create its product. "Splitting Docker up into focused independent tools means more focused maintainers, and ultimately better quality software," stated Docker in its official blog post announcing 1.11.

Aside from fixing long-standing bugs and ensuring the runC/containerd version of Docker didn't slow down, Docker has rolled a slew of improvements into Docker 1.11. Docker Engine now supports VLANs and IPv6 service discovery, and it automatically performs DNS round-robin load balancing across multiple containers that have the same alias.

To comment on this article and other InfoWorld content, visit InfoWorld's LinkedIn page, Facebook page and Twitter stream.
From CIO: 8 Free Online Courses to Grow Your Tech Skills
Notice to our Readers
We're now using social media to take your comments and feedback. Learn more about this here.