Cloud Native 4 min read

Why Kubernetes Is Dropping Docker Support and What It Means for You

Kubernetes 1.20 marks the deprecation of Docker support, explaining that Docker’s heavyweight nature and the maintenance burden of the dockershim layer drove the change, while reassuring developers that OCI‑compatible images still run unchanged, though operators must switch to containerd or CRI‑O.

Java High-Performance Architecture
Java High-Performance Architecture
Java High-Performance Architecture
Why Kubernetes Is Dropping Docker Support and What It Means for You

Kubernetes 1.20 was released, and one major change is the deprecation of Docker support, which will be removed in future versions.

This change caused a stir; why is K8s dropping Docker and how does it affect us?

K8s Why Deprecate Docker?

In short, supporting Docker is too costly for Kubernetes.

First , Docker is heavyweight.

Docker includes many components such as:

CLI

API

Server

Container Runtime

Volumes

Network

Build image

Kubernetes only uses the container runtime part.

Second , Kubernetes had to develop and maintain a separate component called dockershim to bridge Docker, because Docker does not implement the CRI standard.

Dockershim is a temporary solution, and its long‑term maintenance becomes increasingly problematic (e.g., incompatibility with cgroups v2, user namespaces).

Based on these reasons, Kubernetes decided to drop Docker support.

What Does This Mean for Us?

Kubernetes supports container runtimes that follow the OCI (Open Container Initiative) standard, including:

containerd

CRI‑O

Docker‑built images already comply with OCI, so they run in Kubernetes without issues.

Therefore, developers can continue using Docker as before.

For developers, there is no impact; CI/CD pipelines remain unchanged; tools like MiniKube and Docker Desktop are unaffected.

The impact is mainly on Kubernetes operators, who need to replace Docker with containerd or CRI‑O as the new container runtime.

Feel free to share your thoughts in the comments.

References:

https://kubernetes.io/blog/2020/12/08/kubernetes-1-20-release-announcement/

https://medium.com/dev-genius/no-docker-isnt-dead-2b9ee45d5833

https://medium.com/better-programming/kubernetes-is-deprecating-docker-8a9f7566fbca

Original Source

Signed-in readers can open the original source through BestHub's protected redirect.

Sign in to view source
Republication Notice

This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactadmin@besthub.devand we will review it promptly.

Cloud NativeDockerKubernetesDockershimcontainer-runtimeOCI
Java High-Performance Architecture
Written by

Java High-Performance Architecture

Sharing Java development articles and resources, including SSM architecture and the Spring ecosystem (Spring Boot, Spring Cloud, MyBatis, Dubbo, Docker), Zookeeper, Redis, architecture design, microservices, message queues, Git, etc.

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.