


The combination of a Container Runtime and the Docker Container Engine is referred to as the Docker Engine by the Docker website. The interface between a developer and the software stack used to build, distribute, and run containerized software is technically the Container Engine, and in Docker's case the Container Engine is the docker command-line tool. Container Runtimes perform the low level work required to execute containerized processes.Ĭontainer Engines such as Docker with containerd and Podman with conmon are used to pull OCI images and launch containers via a Container Runtime. The OCI runtime-spec is implemented by a number of Container Runtimes, including runc, crun, and katacontainers. The core technologies that power Docker are defined by the Open Container Initiative (OCI), which defines the format for distributable images with the Image Specification (image-spec) and how those images are run with the Runtime Specification (runtime-spec). While the term "Docker" is often synonymous with containerization, it's worth understanding the various tools and specifications working together to support containerized software. The many facets of Dockerĭocker has been part of a large and ongoing movement focused on building, distributing, and running containerized software. In this post, I look at which options are available for which operating systems and offer advice on what choice to make.

This can lead to some confusion, though, as developers need to choose which version of Docker to install. Docker has matured over the years to offer a range of solutions for developers working with containers.
