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."