Pages

Friday, May 7, 2021

Container Plumbing

 

Docker has increased the usage of Containers because of its simplest implementation. We know that the basement on which docker engine is built are two components - runc and containerd. Sometime back docker was built in a monolithic way and it created complexities. Later Docker started breaking the functionality into parts which we now call them as runC and containerd

RunC : RunC is a lightweight, portable container runtime which provides full support for linux namespaces and all other security features. The security features include SeLinux, AppArmor, Seccomp and Cgroups. This is used for spawning and running containers according to OCI ( Open Container Initiative ). Learn How to use RunC Here

ContainerD : RunC is a low level implementation of a container runtime and containerD is builds on top of that. This includes providing higher level features like image transfer, storage, container execution and supervision. It also includes network, storage attachments etc basically manages the complete life cycle of containers. This is considered to be one of the best implementations as of now. Docker has donated the containerD to CNCF. There other implementations include along with containerD are rkt by CoreOS, CRI-O by Redhat and LXD by Linux Containers. Learn how to use ContainerD Here


The Docker Architecture would look some thing like below,


No comments :

Post a Comment