From 65e92a8f146ca256676285642f8af848b8205588 Mon Sep 17 00:00:00 2001 From: Tim Bannister Date: Sat, 11 Dec 2021 17:05:13 +0000 Subject: [PATCH] Add Docker Engine as container runtime Mention that the support via Dockershim is deprecated. Co-Authored-By: Rey Lejano --- .../container-runtimes.md | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/content/en/docs/setup/production-environment/container-runtimes.md b/content/en/docs/setup/production-environment/container-runtimes.md index 268050fd2d..b78d6dcd1a 100644 --- a/content/en/docs/setup/production-environment/container-runtimes.md +++ b/content/en/docs/setup/production-environment/container-runtimes.md @@ -15,11 +15,18 @@ what is involved and describes related tasks for setting up nodes. +Kubernetes {{< skew currentVersion >}} requires that you use a runtime that +conforms with the +{{< glossary_tooltip term_id="cri" text="Container Runtime Interface">}} (CRI). + +See [CRI version support](#cri-versions) for more information. + This page lists details for using several common container runtimes with Kubernetes, on Linux: - [containerd](#containerd) - [CRI-O](#cri-o) +- [Docker Engine](#docker) - [Mirantis Container Runtime](#mcr) {{< note >}} @@ -94,10 +101,19 @@ In order to use it, cgroup v2 must be supported by the CRI runtime as well. Follow this [Migration guide](/docs/tasks/administer-cluster/kubeadm/configure-cgroup-driver/) if you wish to migrate to the `systemd` cgroup driver in existing kubeadm managed clusters. +## CRI version support {#cri-versions} + +Your container runtime must support at least v1alpha2 of the container runtime interface. + +Kubernetes {{< skew currentVersion >}} defaults to using v1 of the CRI API. +If a container runtime does not support the v1 API, the kubelet falls back to +using the (deprecated) v1alpha2 API instead. + ## Container runtimes {{% thirdparty-content %}} + ### containerd This section contains the necessary steps to use containerd as CRI runtime. @@ -394,6 +410,24 @@ Please also note the changed `conmon_cgroup`, which has to be set to the value cgroup driver configuration of the kubelet (usually done via kubeadm) and CRI-O in sync. +### Docker Engine {#docker} + +Docker Engine is the container runtime that started it all. Formerly known just as Docker, +this container runtime is available in various forms. +[Install Docker Engine](https://docs.docker.com/engine/install/) explains your options +for installing this runtime. + +Docker Engine is directly compatible with Kubernetes {{< skew currentVersion >}}, using the deprecated `dockershim` component. For more information +and context, see the [Dockershim deprecation FAQ](/dockershim). + +You can also find third-party adapters that let you use Docker Engine with Kubernetes +through the supported {{< glossary_tooltip term_id="cri" text="Container Runtime Interface">}} +(CRI). + +The following CRI adaptors are designed to work with Docker Engine: + +- [`cri-dockerd`](https://github.com/Mirantis/cri-dockerd) from Mirantis + ### Mirantis Container Runtime {#mcr} [Mirantis Container Runtime](https://docs.mirantis.com/mcr/20.10/overview.html) (MCR) is a commercially