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.
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
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
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.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
