Sam Alba

Deploy and Manage Any Cluster Manager with Docker Swarm

Sam Alba

written by Sam Alba, Sr. Director of Engineering at Docker, Inc.
and Andrea Luzzardi, Software Engineer at Docker, Inc.

As you have seen, last week Docker Swarm reached 1.0, and now is ready for production use. Swarm is native clustering for Docker. Swarm allows production deployment and management of multi-host, multi-container distributed applications at scale.

But what you may not know is that Swarm works well with other cluster managers, such as Kubernetes, Cloud Foundry, Nomad, and more. Many enterprises are building dockerized applications that can run using different cluster managers, depending on the particular use case. The result is that they are seeking heterogeneity, or at least flexibility to choose different solution. That is where Docker Swarm comes in. The Docker Engine has always been about open interfaces, and giving you choice in how you deploy your application. Swarm allows you to manage all your Docker resources and keep the Docker API experience.


Any cluster manager that uses Docker Engine can be launched with some simple steps:

• Create a Compose file that describes how to deploy the cluster manager. For instance, here’s an example Compose file designed to scale Kubernetes:

• Provision the Swarm cluster using Docker Machine
• Deploy the cluster manager using the Docker Compose CLI
• Scale the cluster using Docker Compose
• Use overlay networking to ease cross-cloud deployments

With Docker Swarm you get easy access to all the other Docker tools, particularly Docker Multi Host Networking, which was added to Docker Engine in the 1.9 release. This allows you to create your own network topology, which spans easily across different hosting providers. And Docker Swarm works with all your other Docker tools, like Compose, Machine and more.

If you want to try it out yourself, check out our Swarm Frontends project on GitHub. And we’d love your input, feel free to file issues or submit pull requests.


Learn More about Docker



One thought on “Deploy and Manage Any Cluster Manager with Docker Swarm

Leave a Reply