Skip to content

Commit ebceaf1

Browse files
authored
Merge pull request #30862 from sftim/20211211_marke_dockershim_deprecated_add_mcr
Mark dockershim deprecated / add MCR
2 parents 5dc4a88 + 65e92a8 commit ebceaf1

File tree

1 file changed

+35
-35
lines changed

1 file changed

+35
-35
lines changed

content/en/docs/setup/production-environment/container-runtimes.md

Lines changed: 35 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,19 @@ what is involved and describes related tasks for setting up nodes.
1515

1616
<!-- body -->
1717

18+
Kubernetes {{< skew currentVersion >}} requires that you use a runtime that
19+
conforms with the
20+
{{< glossary_tooltip term_id="cri" text="Container Runtime Interface">}} (CRI).
21+
22+
See [CRI version support](#cri-versions) for more information.
23+
1824
This page lists details for using several common container runtimes with
1925
Kubernetes, on Linux:
2026

2127
- [containerd](#containerd)
2228
- [CRI-O](#cri-o)
23-
- [Docker](#docker)
29+
- [Docker Engine](#docker)
30+
- [Mirantis Container Runtime](#mcr)
2431

2532
{{< note >}}
2633
For other operating systems, look for documentation specific to your platform.
@@ -94,10 +101,19 @@ In order to use it, cgroup v2 must be supported by the CRI runtime as well.
94101
Follow this [Migration guide](/docs/tasks/administer-cluster/kubeadm/configure-cgroup-driver/)
95102
if you wish to migrate to the `systemd` cgroup driver in existing kubeadm managed clusters.
96103

104+
## CRI version support {#cri-versions}
105+
106+
Your container runtime must support at least v1alpha2 of the container runtime interface.
107+
108+
Kubernetes {{< skew currentVersion >}} defaults to using v1 of the CRI API.
109+
If a container runtime does not support the v1 API, the kubelet falls back to
110+
using the (deprecated) v1alpha2 API instead.
111+
97112
## Container runtimes
98113

99114
{{% thirdparty-content %}}
100115

116+
101117
### containerd
102118

103119
This section contains the necessary steps to use containerd as CRI runtime.
@@ -394,44 +410,28 @@ Please also note the changed `conmon_cgroup`, which has to be set to the value
394410
cgroup driver configuration of the kubelet (usually done via kubeadm) and CRI-O
395411
in sync.
396412

397-
### Docker
413+
### Docker Engine {#docker}
398414

399-
1. On each of your nodes, install the Docker for your Linux distribution as per
400-
[Install Docker Engine](https://docs.docker.com/engine/install/#server).
401-
You can find the latest validated version of Docker in this
402-
[dependencies](https://git.k8s.io/kubernetes/build/dependencies.yaml) file.
415+
Docker Engine is the container runtime that started it all. Formerly known just as Docker,
416+
this container runtime is available in various forms.
417+
[Install Docker Engine](https://docs.docker.com/engine/install/) explains your options
418+
for installing this runtime.
403419

404-
2. Configure the Docker daemon, in particular to use systemd for the management of the container’s cgroups.
420+
Docker Engine is directly compatible with Kubernetes {{< skew currentVersion >}}, using the deprecated `dockershim` component. For more information
421+
and context, see the [Dockershim deprecation FAQ](/dockershim).
405422

406-
```shell
407-
sudo mkdir /etc/docker
408-
cat <<EOF | sudo tee /etc/docker/daemon.json
409-
{
410-
"exec-opts": ["native.cgroupdriver=systemd"],
411-
"log-driver": "json-file",
412-
"log-opts": {
413-
"max-size": "100m"
414-
},
415-
"storage-driver": "overlay2"
416-
}
417-
EOF
418-
```
423+
You can also find third-party adapters that let you use Docker Engine with Kubernetes
424+
through the supported {{< glossary_tooltip term_id="cri" text="Container Runtime Interface">}}
425+
(CRI).
419426

420-
{{< note >}}
421-
`overlay2` is the preferred storage driver for systems running Linux kernel version 4.0 or higher,
422-
or RHEL or CentOS using version 3.10.0-514 and above.
423-
{{< /note >}}
427+
The following CRI adaptors are designed to work with Docker Engine:
424428

425-
3. Restart Docker and enable on boot:
429+
- [`cri-dockerd`](https://github.com/Mirantis/cri-dockerd) from Mirantis
426430

427-
```shell
428-
sudo systemctl enable docker
429-
sudo systemctl daemon-reload
430-
sudo systemctl restart docker
431-
```
431+
### Mirantis Container Runtime {#mcr}
432432

433-
{{< note >}}
434-
For more information refer to
435-
- [Configure the Docker daemon](https://docs.docker.com/config/daemon/)
436-
- [Control Docker with systemd](https://docs.docker.com/config/daemon/systemd/)
437-
{{< /note >}}
433+
[Mirantis Container Runtime](https://docs.mirantis.com/mcr/20.10/overview.html) (MCR) is a commercially
434+
available container runtime that was formerly known as Docker Enterprise Edition.
435+
436+
You can use Mirantis Container Runtime with Kubernetes using the open source
437+
[`cri-dockerd`](https://github.com/Mirantis/cri-dockerd) component, included with MCR.

0 commit comments

Comments
 (0)