Open Container Initiative Specifications are 1.0

• By Brandon Philips

After two years of work with major stakeholders in the community, we’re excited to announce that the Open Container Initiative (OCI) image and runtime specifications have now hit version 1.0. This means there is now a stable industry standard for application containers that has been created and approved by leaders in the container industry. This is an important milestone for the OCI community, and we look forward to working with our partners to further facilitate standards and innovation.

CoreOS started the conversation about container specifications years ago, and we are pleased to have worked alongside the major leaders across the industry to create this release. As chair of the OCI Technical Oversight Board, we appreciate the work the open source community has done to reach this milestone. Users can expect the OCI to continue to help grow the market of interoperable and pluggable tools, giving them confidence that containers are here to stay. Further, Kubernetes users are already using parts of OCI specifications today and the community is actively working to ensure growing support for both the OCI Image and OCI Runtime specifications in future releases.

OCI: A history

At CoreOS, we believe that open standards are key to the success of the container ecosystem, and that the best way to achieve standards is by working closely with the community. The Open Container Initiative (OCI) is an open governance organization tasked with creating standards for container image formats and runtimes. CoreOS is a founding member of the OCI, and we’ve worked diligently with other leaders in the container industry – including such organizations as Docker, Microsoft, Red Hat, IBM and Google – to bring this project to its first stable release. The goal of the OCI is to create specifications that enable a compliant container to be portable across all major, compliant operating systems and platforms while minimizing technical barriers.

The origins of the OCI date back to 2015, when we met with Docker, Google and other stakeholders to discuss the future of the container industry. You can read more about it in this 2015 blog post. We all shared an interest in creating an industry standard which led directly to the creation of the OCI.

The OCI began with a focus on the runtime of containers; that is, creating a specification on the mechanisms and environment of an actively executing container. As the conversation developed, we agreed that a standard image format was even more critical to ensure application packagers could create one container image that could run in and be ported to any environment. And in 2016 the OCI Image Specification began. Over the last two years these two specifications have developed to maturity and have been implemented in a variety of implementations.

Thank you to the OCI and container community

We’d like to thank the founding members of the OCI and our Technical Oversight Board from CoreOS, Red Hat, Docker, Microsoft, Google, and the Linux Foundation, including: Chris Wright, Vincent Batts, Diogo Mónica, Michael Crosby, John Gossman, Jason Bouzane, Vishnu Kannan, and Greg Kroah-Hartman. We also want to thank Chris Aniszczyk and Jill Lovato, our leadership at the OCI. Finally, we’d like to thank the community for their help and for being the inspiration behind this project.

What to expect now?

The work done in the OCI will help ensure users can create container images, using any number of OCI conforming tools, and be assured they will run on any number of container orchestration environments that can execute OCI conforming images. This will ensure teams can choose the build and runtime tools that best meets their needs and with this 1.0 release users can be confident that any images and tooling built against this release will receive wide support well into the future.

However, the work of OCI isn't complete with this release. 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. Also, the conformance process for OCI can now begin to build processes to enable tools to be recognized as OCI conformant implementations. And finally, we anticipate that with this release a number of new and existing tools will implement the specifications, including the ecosystem of container engines, container orchestrators and container build tools.

You can stay up to date with information on implementations of the OCI, as well as Kubernetes and product releases by signing up for our newsletter or the OCI mailing list if you are interested in getting more involved.