Docs
uk8s
Cluster Component Management
Containerd
Docker VS Containerd

Docker VS Containerd

When creating a new Kubernetes version in UK8S v1.19 and later, the container engine has been replaced with Containerd by default, whereas Kubernetes versions prior to 1.19 were Docker. Both container engines have their own command tools to manage images and containers.

In order to allow UK8S clusters lower than 1.19 to be upgraded to 1.19+, UK8S also launched container runtime upgrade function to help customers upgrade smoothly.

Please note that nodes adopting the containerd runtime will use CNI network plug-ins to allocate Pod IP through containerd. If docker is installed separately, it will override the relevant configuration files of containerd, causing the Pod IP allocation to fail. Therefore, please do not install docker separately to avoid making the node unavailable.

Comparison of Docker and Containerd Commands

Image Management Command Comparison

Image Related FunctionsDockerContainerd
Show Local Image Listdocker imagescrictl images
Download Imagedocker pullcrictl pull
Upload Imagedocker pushNone
Delete Local Imagedocker rmicrictl rmi
View Image Detailsdocker inspect IMAGE-IDcrictl inspecti IMAGE-ID

Container Management Command Comparison

Container-Related FunctionsDockerContainerd
Display Container Listdocker pscrictl ps
Create Containerdocker createcrictl create
Start Containerdocker startcrictl start
Stop Containerdocker stopcrictl stop
Remove Containerdocker rmcrictl rm
View Container Detailsdocker inspectcrictl inspect
attachdocker attachcrictl attach
execdocker execcrictl exec
logsdocker logscrictl logs
statsdocker statscrictl stats

Pod Command Comparison

POD Related FunctionsDockerContainerd
Display POD ListNonecrictl pods
View POD DetailsNonecrictl inspectp
Run PODNonecrictl runp
Stop PODNonecrictl stopp

Container Runtime Upgrade

On the plug-in page of the cluster management page in the console, select the “Container Runtime” tab (this tab currently only shows for clusters that have been upgraded to version 1.19 and above), and you can upgrade the legacy nodes before the cluster upgrade to the container runtime. The new nodes added after the cluster upgrade will be containerd runtime by default.

The runtime upgrade will proceed in the order of upgrading all Master nodes first, then upgrading Node nodes. During the upgrade, the node will be unavailable, and its Pod will be evicted to other nodes, which may affect the business. It is recommended to ensure sufficient cluster resources when performing this operation and operate during off-peak business hours.