Docker announced today it will integrate an “unmodified” version of Google’s Kubernetes container-orchestration tool as a native part of Docker. Docker said the Kubernetes integration will be available as a beta release, but gave no release date.
This integration will be extended to all versions of Docker—the for-pay Enterprise Edition, and the desktop incarnations, Docker for Mac and Docker for Windows, which use the free Community Edition. Both enterprise and desktop versions will have Kubernetes support for all the operating systems they currently support.
Why Docker is adding Kubernetes
One reason Docker is including Kubernetes is to spare developers the effort of standing up a Kubernetes instance, whether for simple dev/test or for actual production use. Historically it’s been a chore to get Kubernetes running, and so and have emerged to simplify the process. Most of the time, it’s easier to use a , becayse the distribution’s packaging deals with these problems at a high level.
Docker’s inclusion of Kubernetes makes Docker itself a Kubernetes distribution.To integrate the two, Docker is using a Kubernetes feature called , a native way to customize particular installations of Kubernetes.
. Swarm appealed to some developers because it provided a stripped-down way to perform container orchestration without Kubernetes’s conceptual and practical overhead.
But as Kubernetes has become more popular and well-understood, and as it’s gained more sophisticated features and tools (like Helm, the Kubernetes application package manager), more people have elected to use Kubernetes first. Kubernetes has also become the go-to orchestrator for production loads.
Swarm isn’t being phased out; it will be provided along with Kubernetes. Any functionality that was supported natively with Swarm, like Docker’s app life cycle features, will also be supported with Kubernetes.