Skip to main content

Docker support is being deprecated in Kubernetes - but not just yet

Shipping containers
(Image credit: Pixabay)

The mention of Kubernetes dropping support for Docker in the release notes for its latest release, raised a lot of eyebrows. 

A tweet by the Kubernetes SIG Security co-chair, Ian Coldwater didn’t help matters, either: "Docker support is being deprecated in Kubernetes. You need to pay attention to this and plan for it. THIS WILL BREAK YOUR CLUSTERS."

The move might come as a shock to anyone who’s been busy spinning up containers and not paying attention to the development of Kubernetes. But it really isn’t such a big deal.

Not the end of the world

In the release notes and in a follow up blog post, Kubernetes developers explain that all they are doing is deprecating Docker as a container runtime after v1.20.

If you’re wondering what’s a container runtime, it’s best explained in a trending tweet by Google Cloud Platform’s Staff Developer Advocate Kelsey Hightower: “Docker != Containers. There are container images. Docker can build them. There are container registries. Docker can push and pull from them. There are container runtimes. Docker is one of them. There are container processes. Docker can create them but Linux is still the boss.”

So all that has happened is that Kubernetes is deprecating (and will eventually remove) Docker as a container runtime in favor of runtimes that use the Container Runtime Interface (CRI), such as containerd and CRI-O.

For the end-users of Kubernetes there shouldn’t be much of a fallout of this move as the developers explain “Docker-produced images will continue to work in your cluster with all runtimes, as they always have.”

However, if you’re rolling your own clusters though, you’ll need to make sure that you don’t use Docker as a container runtime going forward. If you do, you’ll get a depreciation warning with the current v1.20 release. 

If you don’t want your clusters to break, make sure you switch to one of the compliant container runtimes before the runtime support for Docker is removed, which is currently planned for v1.22 due in late 2021.

All in all, this move is about enforcing best practices and little else.

Via: The Register