Containrd and docker engine philosophy

Is docker engine contain containerd or not ?if no what is relation between docker engine and containerd?

The docker engine sits “on top of” containerd. It uses it to perform the lower level container actions. For example, when you use the docker run command, the command first goes to the docker engine. The engine checks the command, and if it is valid, downloads the image if it was not already present. Then it calls containerd to actually create the container from the image. Containerd sets up the filesystem, network interfaces etc., and then calls an even lower layer component, usually runc, to actually start the isolated processes.

Recently, the docker engine gives the option of letting containerd do the image management as well, so downloading/storing the image in the example above is also done by containerd.

2 Likes

Thanks for sharing your understanding! as you mentioned, Docker Engine now offers the flexibility for containerd to handle image management as well. This means tasks such as image downloading and storage can be delegated to containerd, streamlining the process further.understanding this relationship is very important .thank you Brother

1 Like