containerd
containerd is an industry-standard container runtime daemon that manages the complete container lifecycle on a host: image pull and storage, container execution, snapshotting, and networking. It is the runtime that Kubernetes, Docker, and most container platforms call underneath.
How it fits
Container tooling is typically layered. Docker and Kubernetes are high-level interfaces; they delegate the actual running of containers to a runtime. containerd sits in the middle: it accepts requests, manages images, and in turn calls a lower-level OCI runtime (runc) to start container processes using Linux namespaces and cgroups.
What it provides
- Image pull from OCI registries, layer storage, content-addressable blob store
- Container creation, start, stop, delete via the CRI (Kubernetes) and the containerd gRPC API
- Snapshotters (overlayfs, btrfs, devmapper, ZFS) that materialise images as filesystems
- CNI integration for networking plugins
- Metrics, events, and a plugin architecture
🔗