O Kubernetes suspendeu o uso do Docker e planeja retirá-lo em cerca de um ano, na versão 1.22 ou 1.23. Essa notícia gerou muitas dúvidas e mal-entendidos. O blog do Kubernetes tem dois artigos inteiros que explicam o significado da entrada do Changelog ( um e dois ). Para resumir tudo, então, para os desenvolvedores (aqueles que são Dev ) nada muda - eles ainda podem continuar a usar o docker build para construir seus contêineres, mas para os engenheiros responsáveis pela operação do cluster ( Ops ), é hora de descobrir e aprender alguns novas ferramentas.

2016 , Kubernetes Container Runtime Interface (CRI). Kubernetes 1.3 kubelet Docker, 1.3 rkt Container Engine ( ). , Docker rkt, kubelet. rkt , container runtime kubelet, .
, — Container Runtime Interface. , Docker, kubelet, kubelet CRI. — Docker CRI. , Kubernetes - kubelet Docker. kubelet CRI, — docker-.
dockershim, 1.23.
, 2020 , 2016 Container Runtime Interface.
rkt .
RedHat CRI-O.
Docker containerd, dockerd docker-cli.
, CRI — containerd cri-o. , 2020 , Kubernetes Docker.
, . : « containerd cri-o?»
: «». containerd cri-o . , :
;
;
, ;
( bash).
, - registry. ?
, 2015 «Docker » Open Container Initiative (OCI) . Docker, containerd cri-o, , docker build , containerd cri-o. , « ». , , , , .
— containerd . CI runners Docker.
, enterpise , Openshift ( Kubernetes), cri-o. RedHat , buildah. Docker, .
kaniko — Google. , , — .
, : , , , NotReady, docker ps
, docker: command not found
.
, Docker , , , CRI — by design -, .
, CRI, crictl, CLI- CRI-. crictl containerd cri-o.
, docker crictl docker ps
crictl ps
. , crictl run
, , PodSandbox, , , .
, CRI Kubernetes Kubernetes, , , Pod Runtime Interface.
crictl , kubelet. , PODSandbox , , Docker. CLI .
, . docker
( docker-cli) dockerd
(, ). crictl image save/load
, crictl . issue , crictl — CRI runtime, , registry. .
! skopeo, cri-o, ctr containerd.
, :
«, containerd, kubelet dockerd! Docker ( docker-cli, docker, containerd), kubelet containerd , docker
».
docker ps
, kubelet CRI. - , containerd , docker kubelet containerd namespaces — moby
k8s.io
( kubernetes namespaces). ctr -n <ns_name> container ls
.