In the current time of technological innovation, choices about what container service and format to use can have a large impact on what software is compatible with the service you choose. With a multitude of different container services to choose from, (Docker, CoreOS-RKT, Linux Containers (LXC, LXD), Jetpack, Solaris Zones, Kurma, BSD Jails), a container standard was inevitable.

History

After many years of containers being completely standard free, a mass container standardizing initiative has taken hold. Many of the leading tech companies of today have gotten together and created “The Open Container Initiative” or OCI. A few of the forty plus companies involved include Docker, CoreOS, Rancher Labs, Microsoft, The Linux Foundation, Intel, Google, Amazon, Cisco, HP, IBM, and Red Hat.

Formed in June of 2015, the OCI has tasked themselves with creating a vendor neutral container standard for businesses to adhere to. Basically, this means the standard will be a blueprint for container creation, so the containers will run in any compliant runtime environment. The OCI website states “This assures that businesses can fully commit to container technologies without the fear of lock-in”. Docker is leading the way for the standard by donating its draft specifications, image format code, and runtime engine code to start the project.

Standard release

On July 19th 2017, OCI announced the release of “Runtime Specification v1.0” and “Image Format Specification v1.0”. The release of these container standards lays out specifications for the portability and implementation of containers, which will make it easier for businesses to support container solutions.

Container certification

The OCI website also states;

“While v1.0 represents a great deal of progress, marking a readiness for serious commercial adoption, there is 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”.

This means companies will need to meet the standards in order to become certified through the OCI. OCI has two types of products that can be certified.

The first is “OCI Certified Image”. This certification is defined as “an OCI Image, consisting of a manifest, an image index (optional), a set of filesystem layers, and a configuration“. The specifications goal is to allow “interoperable tools for building, transporting, and preparing a container image to run”. The second is “OCI Certified Runtime”. The OCI documentation has specific use cases for Application Bundle Builders, Hook Developers, and Runtime Developers. The basic explanation of what being OCI Certified Runtime means, is that your product falls within a narrow specification of how the container will run. This allows consumers who use the software to be assured of the runtime behavior of the container.

An organization or individual may apply for OCI Certification for their product regardless of their membership in the Open Container Initiative organization. There are six steps in the certification process: apply, test, publish results, peer verification, certify, and promote. Once certified, you may use specific OCI marking on your marketing sites. Contributing to the OCI Certified Runtime takes place on GitHub and follows a laid out procedure that is defined in the documentation.

More information on the OCI certification process is available at: https://github.com/opencontainers/certification

What does this means for DevOps teams and container consumers?

With the industry moving towards cloud computing and multi-cloud ecosystems, container-based development has grown significantly in the last several years. Having a standard for containers is arguably one of the strongest moves these tech companies can make with container-based systems.

It allows companies that consume containers to move forward with utilizing containers in their development and production environments without fear that other container providers won’t work with their software development. This will also help with container adoption and speed up innovation and execution in software development. Vendor neutral standards will help create innovation among the container providers as well.

The future

It will be exciting to see what OCI has in store for version two and the certification process. OCI will be attending many industry container events, such as KubeCon, DockerCon, and Microsoft Ignite. These events are open to everyone and encourage companies and individuals to come and get involved with the OCI.

Key takeaways

OCI:

  • Allows companies that consume containers to move forward with implementing containers in their development and production environments without fear.
  • Helps with container adoption.
  • Speeds up innovation as well as execution in software development.
  • Create vendor neutral standards to spark innovation among the container providers.

Interested in learning more about Yipee.io? Sign up for free to see how Yipee.io can help your team streamline their development process.