The new containerd: An open governance driven embeddable container runtime
I’m excited that today we are revealing the culmination of months of discussion between Docker and many of their partners and downstream users: a truly open and collaborative project for a stable, capable, and embeddable container runtime. This should be very welcome news for many communities that rely today on the Docker engine releases. As significant as that part of the announcement is, equally important and as valuable is the commitment to open governance outside of Docker, Inc. for those who have been concerned about the governance of one of today’s most critical underpinning technologies; and one that is key to so many components of a cloud native ecosystem.
IBM is fully on board with today’s announcement, supporting the expansion of the current containerd project and committing maintainer and contributor support for this project as we do today for the OCI projects, the core Docker engine, as well as many projects throughout the CNCF. I’m personally excited to be a seed maintainer on the project and hope to quickly jump in and help as this project gets off the ground.
Why is today’s announcement important at this juncture in the history of cloud native? Here are my personal thoughts:
- A “winner” in the container orchestration space is potentially a ways off, if ever. Having a stable, well-tested, and well-supported “boring” runtime that can be embedded by all players leaves the differentiation at the higher layers while providing a solid underpinning for each. There can be no question whether its design, timelines, or roadmap benefits a single player, as it will provide the same benefits to all consumers.
- While I personally believe that Docker, Inc. has performed their role as steward and overseer of the Docker codebase with a high degree of openness and fairness in the majority of cases, their role as a commercial entity and competitor to many other solutions leaves them in a tenuous position and open to lots of criticism, whether fairly or unfairly at times. Putting the new containerd embeddable runtime fully under open governance removes this avenue for criticism and allows the development and support of the engine in neutral hands under a strong set of community-focused maintainers.
- The “spin out” model that Docker has adopted for many of the plumbing projects moves the Docker-based container engine stack closer to the UNIX philosophy model of operation, where specific pieces can be integrated or left out, depending on the needs of the user. It also allows Docker, Inc. to act more like a Linux distribution company, where runc and the OCI spec become an industry specification for containers and containerd is now the “kernel” implementation. Docker and others can utilize this common core to create their own distribution or embedded runtimes which all utilize a common container engine, but differentiate on their higher layer open or commercial offerings. While the timeline looks backwards from the Linux model with a distribution (Docker 1.x) appearing first, spinning out the “kernel” is an important step in the maturity of this entire stack.
So, whatever your thoughts might be as you read today’s announcement, I hope you’ll agree that as the container space continues to heat up from every angle, this is an important move and maturing step in the history of the modern container ecosystem. With every major cloud provider offering container capabilities, popular orchestrators like Kubernetes, Swarm and others, as well as important PaaS projects like Cloud Foundry all relying on container runtimes, hopefully we can all rally around this new open governance-driven embeddable runtime as the next step in the evolution of our ecosystem.