This lab is focused on understanding some of the container standards that govern this space. This will help you better architect your own environments, feeling more confident about where to invest.
By the end of this lab you should be able to:
- Explain the Image, Runtime, and Distribution specifications
- Have a basic understanding of the major metadata files
- Be able to start a container from scratch
- An overview of the three OCI specifications
- The OCI image specification
- The OCI runtime specification
- The OCI reference implementation of the runtime specification (runc) and how to start a container
Once you have watched the background video or went throught the presentation, continue to the exercises
In this course you learned:
- Multi-Container Applications: The classic two-tiered, wordpress application
- Cluster Performance: Scaling applications horizontally with containers
- Cluster Debuggin: Troubleshooting in a distributed systems environment
Also, if you have any questions tweet us at:
@RedHat @OpenShift @CoreOS @fatherlinux
Linux Container Internals 2.0 - Lab 6: Container Standards
Overview of The OCI Specifications
The goal of this lab is to get a basic understanding of the three Open Containers Initiative (OCI) specificaitons that govern finding, running, building and sharing container - image, runtime, and distribution. At the highest level, containers are two things - files and processes - at rest and running. First, we will take a look at what makes up a Container Repository on disk, then we will look at what directives are defined to create a running Container.
If you are interested in a slightly deeper understanding, take a few minutes to look at the OCI work, it's all publicly available in GitHub repositories:
- The Image Specification Overview
- The Runtime Specification Abstract
- The Distributions Specification Use Cases
Now, lets run some experiments to better understand these specifications.