Open Container Initiative 1.0 brings the container industry closer to standardization
© Shutterstock / Voelger
Open Container Initiative 1.0 is here! We’ve waited two years for this version but it was worth the wait. Although there is still work to be done —a formal certification program will be launched later this year— let’s take a moment to look at OCI 1.0.
You remember the Open Container Initiative, right? It’s an open source community for creating open industry standards around containers and they have a big announcement for you: the debut release of its container runtime and image format specifications a.k.a. Runtime Specification v1.0 and Image Format Specification v1.0. The former is a specification for defining the lifecycle of a container while the latter is a specification for the container image format.
According to the official announcement, Open Container Initiative 1.0 specifications “lay the foundation for container portability across different implementations to make it easier for customers to support portable container solutions.” Chris Aniszczyk, Executive Director of the OCI stated that this release “is a huge milestone for both the container community and the industry at large.”
By creating these open, accessible specifications, along with early deployments, we are bringing the industry closer to portability and standardization
Brandon Philips, CTO at CoreOS and chair of the OCI Technical Oversight Board wrote in a blog post announcing the release that version 1.0 “means there is now a stable industry standard for application containers that has been created and approved by leaders in the container industry.”
What’s next for the Open Container Initiative?
There’s still work to be done! “The OCI community will be launching a formal certification program later this year while active and ongoing work is underway in terms of additional platform support and potential to add additional specification functionality or projects,” according to the official announcement.
The maintainers of the OCI specifications will now turn their attention to a number of features and ideas that could wait until a post-1.0 release, including distribution, signing and continued platform support.
Open Container Initiative FAQ
In case you’re not familiar with OCI, here are a few answers to some questions you might have.
Why have all of these companies (complete list here) come together?
In the past few years, there has been rapid growth in both interest in and usage of container-based solutions. Almost all major IT vendors and cloud providers have announced container-based solutions, and there has been a proliferation of start-ups founded in this area as well. While the proliferation of ideas in this space is welcome, the promise of containers as a source of application portability requires the establishment of certain standards around format and runtime. While the rapid growth of the Docker project has served to make the Docker image format a de facto standard for many purposes, there is widespread interest in a single, open container specification, which is:
- not bound to higher level constructs such as a particular client or orchestration stack,
- not tightly associated with any particular commercial vendor or project, and
- portable across a wide variety of operating systems, hardware, CPU architectures, public clouds, etc.
How does this benefit users?
Users can fully commit to container technologies today without worrying that their current choice of any particular infrastructure, cloud provider, DevOps tool, etc. will lock them into any technology vendor for the long run. Instead, their choices can be guided by choosing the best tools to build the best applications they can. Equally important, they will benefit by having the industry focus on innovating and competing at the levels that truly make a difference. To use an analogy, why argue about the width of train tracks, when you can worry about laying track and building the best possible engines? Ultimately, we want to make sure that the original promise of containerization—portability, interoperability, and agility—aren’t lost as we move to a world of applications built from multiple containers run using a diverse set of tools across a diverse set of infrastructures.
How is OCI different from a traditional standards group?
Traditional standards groups are generally architect-driven and usually, code comes after the specifications are defined. Standards are built first, and then all products must adhere to those standards. The OCI seeks rough consensus and running code first. The OCI projects are being developed by the community, and independent implementations of tools are encouraged to ensure that the same container can be run consistently. The goal is to have multiple implementations and do thorough testing while the specification evolves over time.