A Foray into the World of Containerd

Image for post
Image for post

Overview

Docker announced the separation of Containerd from Docker Engine on December 14, 2016, and donated Containerd to a new open-source community for independent development and operation. This announcement took place in a globally publicized event that focused on the industry-standard container designed for simplicity, robustness, and portability during runtime.

Image for post
Image for post

Architecture

Image for post
Image for post

Features and Route Map

● Support OCI images
● Support OCI running (runC)
● Support image pulls/pushes
● Container runtime and lifecycle management
● Network primitives: create/edit/delete interfaces
● Add containers into existing network namespaces
● Support global multi-tenant sharing of images using “content addressable” storage

Relationship between Containerd and Docker Engine

Docker Engine includes Containerd, which is focused on runtime container management. In addition to container management, Docker can complete image build and other features.

Relationship between Containerd, OCI, and runC

OCI is a standardized container specification, which includes runtime specifications and image specifications. runC is a reference implementation based on this specification and Docker contributes the main code for runC.

Relationship between Containerd and the Container Orchestration System

In the figure below we can see the position of Containerd in the container technology ecology. For the open-source orchestration systems, Kubernetes now adopts Docker directly, and future versions may switch to using Containerd. Mesos and other orchestration engines can use Containerd instead of using Docker directly.

Image for post
Image for post

Conclusion

Containerd aims to provide a more open and stable running infrastructure for containers. It allows the end-users to enjoy benefits from a stable and well-supported container infrastructure. Additionally, several vendors can utilize Containerd as a standardized, flexible container-operating layer, to provide customized network, storage, and container orchestration solutions conveniently. This constitutes the significance of building an open and healthy container ecosystem.

Follow me to keep abreast with the latest technology news, industry insights, and developer trends.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store