From Wikitech
FIXME: This article could probably use some more history and information


Kubernetes doesn't manage the low level details of running a container itself. It delegates that function to what is called a Container Runtime Engine (CRE). As a TL;DR, the project started supporting only Docker but has helped morph a standard, the Container Runtime Interface, which allowed interested parties to create container runtime engines to be used with Kubernetes.

Docker deprecation

In late 2020, the kubernetes project announced that they would be deprecating and replacing Docker as a Container Runtime Engine by version 1.23. This was tracked in T269684

Moving away from Docker

In 2023 the Service Operations SRE team run a container runtime engine selection process to move away from Docker. The result of the evaluation was to target containerd, the container runtime engine powering Docker (which is under the hood utilizing it as of 2024). The team crafted a set of criteria for the evaluation and using a simple grading approach.