The open-source container community is uniting today with the new Open Container Project (OCP), which is backed by the Linux Foundation. The OCP ends months of speculation and debate in the Docker community about container specifications and unite the biggest backers of containers behind a common purpose.
In December 2014, the nascent community around Docker fractured, with CoreOS launching its own container technology and the appc (App Container Image) effort to define a standard for containers. Now with the Open Container Project, the goal is to mend fences and find common ground to define a base specification for containers that will work across Docker, CoreOS and any other OCP-based container technology.
The founding members of the OCP include Docker Inc., CoreOS, Amazon Web Services, Apcera, Cisco, EMC, Fujitsu, Goldman Sachs, Google, HP, Huawei, IBM, Intel, Joyent, the Linux Foundation, Mesosphere, Microsoft, Pivotal, Rancher Labs, Red Hat and VMware.
“The idea of trying to set up an industry standard with Docker Inc. contributing really started about three weeks ago, and it started picking up steam in the last week,” Ben Golub, CEO of Docker Inc., told eWEEK.
When CoreOS first started appc and its associated Rocket container technology, the goal was to solve a few perceived technical and organizational problems with Docker, Alex Polvi, CEO of CoreOS, said.
“By participating with Docker and all the other folks in the OCP, we’re getting the best of all worlds,” Polvi told eWEEK. “We’re getting the contributions from Docker with the format and runtime that underpin container usage, and then we’re also getting the shared standard and vendor neutrality aspects that we’ve designed with app container.”
Polvi noted that the mission behind the OCP is in some respects directly inspired by appc.
To be clear though, the point of the OCP is not to standardize Docker, but rather to standardize the baseline for containers. Polvi explained that with an open standard, there can be multiple implementations of the standard. So for CoreOS, it means the company will continue to work on its Rocket container technology, while Docker will continue to work on the Docker container technology.
Today, Rocket is a command line tool for running app containers, but in the future it will become a tool for running OCP containers, according to Polvi. He sees a scenario in which a user will build a container in Docker, since Docker has solid tools for building application images, but the user could still run that image in Rocket without needing to rebuild the image.
“Users will have the choice to choose the best technology for their jobs,” Polvi said. “As vendors, we need to differentiate and demonstrate unique value to justify the tools that we’re providing.”
From an interoperability perspective, there is already an installed base of Docker container and Rocket container users today. Golub noted that the initial milestone for the OCP is to build a common format that both Docker and Rocket can convert into. After that, the OCP will push forward on developing a robust format for the future, with the goal of making sure there is backward compatibility.
“If we do this right, we’re not arguing about the container format itself and all the basics of the runtime,” Golub said. “Instead, we’re really competing on the basis of features, user interface, higher level orchestration and things like that.”
Docker Rivals Join Together in Open Container Effort
At the primary level of the OCP is the libcontainer technology, which is a low-level format for enabling containers in Linux. Golub explained that the OCP will be tasked with defining a low-level format for containers across multiple architectures, including Linux and Microsoft Windows, as well as IBM Power.
“We don’t want containers to just be a Linux-specific technology,” Golub said.
A key part of the OCP is an open governance structure that is run as a Linux Foundation Collaborative Project. Docker already has its own open governance, which was restructured in January to provide even more transparency to the open-source Docker project.
Only the libcontainer technology is being moved out of the Docker project itself to be its own project at the OCP under the Linux Foundation, Golub explained. The governance of the OCP will have three layers, with technical leadership at the base layer—technical leaders will include current libcontainer maintainers from Docker, Red Hat and Google who will be joined by appc maintainers from the CoreOS community.
There will also be a technical oversight board that will not be vendor-based, but rather will have non-vendor associated experts. Lastly, stewardship of trademarks and fiduciary oversight is provided by the Linux Foundation.
Golub emphasized the goal of the OCP is not to be a big organization, but rather to stay narrowly focused on the container format and runtime. As to why the Linux Foundation was chosen as the place to host the OCP, he said the goal of the participants in the OCP is to keep the organization as minimal as possible. The Linux Foundation is now home to multiple open-source collaborative efforts, including the Xen hypervisor and the Cloud Foundry platform-as-a-service (PaaS) projects.
“We didn’t want to burden down this OCP effort with all the overhead of creating our own foundation and arguing over oversight and charters,” Golub said.
Overall, the goal of the OCP is about enabling the container ecosystem, he added.
“We’re not arguing about the width of the train tracks here anymore; it’s about who can build the best train engine to run on the tracks,” Golub said.
Sean Michael Kerner is a senior editor at eWEEK and InternetNews.com. Follow him on Twitter @TechJournalist.