container42.com - Container42 · Stuff I find interesting

Example domain paragraphs

Today I’d like to jump in and talk about containerd’s “shim” interface. If you are interested in a more high level overview of containerd, see my other post .

In containerd, the “shim” is responsible for all the platform specific logic for executing and interacting with a container. For every containerd or Docker container, there is a corresponding “shim” daemon process (*some exceptions apply) that serves an API which containerd uses to to interact with that container. “Interact” here means the basic lifecycle things (start/stop), execing new processes in the container, resizing tty’s and other things which requires platform specific knowledge. Another critical

Shims allow the main containerd daemon to detach from the process lifecycle of a container. This enables admins to do things like upgrade containerd without disrupting running containers (though it is a good idea to stop running containers when upgrading from X.Y to X.Y+1). It also is what allows Docker’s --live-restore feature to work (though Docker does not currently support custom shims).

Links to container42.com (1)