If you want to use Docker Swarm mode to orchestrate containers, finding a container environment that supports Swarm can be tough. That begs the question: Is the future looking dim for Docker Swarm?
Swarm, of course, is an orchestration tool. It automates the provisioning and management of containers.
When you hear people talking about container orchestrators, Swarm is usually part of the conversation. Alongside Kubernetes and Mesos, Swarm is among the best known container orchestrators.
That is largely because Swarm comes baked into Docker. Swarm is available by default, although Docker administrators can disable Swarm mode and use Kubernetes, Mesos or another orchestrator instead.
Commercial Swarm Implementations
Swarm would seem to have important advantages over competing orchestrators. It ships with Docker by default. It’s also created by Docker, whereas other orchestrators are third-party tools.
Yet despite this, Swarm’s presence in the Docker market is surprisingly limited. Of the major commercial container services available today, I can think of only three that support Swarm, including:
- Docker Enterprise Edition, the Containers-as-a-Service (CaaS) platform from Docker. It’s only natural for Docker to use Swarm with its own product.
- Azure Container Service, which supports Swarm as an orchestration option. This makes sense from a market perspective because Microsoft (which owns Azure) and Docker are close partners.
- Rancher, which supports Swarm along with the other major orchestrators. Rancher gives no special preference to Swarm.
Beyond this, support for Swarm on other CaaS platforms is fleeting. Red Hat OpenShift and Google Container Engine use Kubernetes. Amazon’s Elastic Container Service (ECS) on AWS runs a custom orchestrator, as does Kontena, a CaaS platform targeted at developers.
When it comes to CaaS options that integrate Swarm as an orchestration solution, then, the options are limited. Only one—Docker Enterprise Edition—uses Swarm as the only orchestrator solution. A couple other platforms support Swarm in addition to other orchestrators. About half of the major CaaS offerings don’t support Swarm at all.
The paucity of Swarm support in commercial container platforms doesn’t mean Swarm is dying. It has an established presence.
Yet, Swarm is clearly in a backseat position to other orchestrators, especially Kubernetes. As I wrote recently, Kubernetes has enjoyed a strong and growing lead over Swarm (and Mesos) for more than a year.
It’s hard to imagine that trend changing anytime soon. My bet is that Swarm will always be around as an orchestration option chosen by some users. But Swarm will never seriously threaten Kubernetes as the leading orchestrator.