Docker Engine 1.11 is out today and the most noteworthy piece is a complete refactoring of code to make use of new model, that used the containerD daemon to spin up new container instances with runC.
All of that work is all about being complaint with the Open Container Initiative’s (OCI) container specification, which are an effort to create a standards based approach for containers.
The Github PR for the containerd explains:
“Docker Engine 1.11 will use containerd for container supervision. Because containerd ultimately relies on runC and the OCI specification for container execution, this will open the door for the Engine to be able to use any OCI compliant runtime.”
This new architecture will also open the door for potentially making it possible to upgrade the daemon without shutting down all running containers in the future, and will bring a significant performance boost when handling a big amount of containers. Following the plumbing philosophy, a great aspect of this design is that Docker Engine execution layer will be entirely relying on well delimited tools that can be used independently, with the drawback that it won’t ship as a single binary anymore.”
Beyond the shift to OCI, Docker 1.11 is a big release for networking as it now supports and can create IPv6 enabled networks.
Docker learned to create ipv6 enabled networks (docker network create –ipv6). This show up as a new EnableIPv6 field in docker inspect. (#17513)
As is the case with all Docker Engine releases, I suspect there will be an incremental update, a Docker 1.11.1 update within the next 10 days, so I personally won’t run Docker 1.11 in production till then.
Sean Michael Kerner is a senior editor at InternetNews.com. Follow him on Twitter @TechJournalist