Container runtimes
Containers run on physical servers, virtual machines, and cloud instances. As they all look the same to a container we’ll refer to them generically as nodes.
Every node that wants to run containers needs specialised software called a container runtime. This is responsible for downloading container images from registries, as well as creating, starting, stopping, and deleting containers on the node. Docker is the best-known container runtime, but lots of others exist.
Let’s revisit the workflow mentioned earlier to show where container runtimes fit in.
Developers write applications that get built into container images and stored in registries. To run a container, a node needs to download the image and start a container from it. The software that does this is the container runtime. The act of downloading a container image is usually referred to as pulling the image.
If you’ve worked with VMware, it might be helpful to compare container runtimes...