Docker Swarm logo
Native clustering for Docker. Turn a pool of Docker hosts into a single, virtual host.

What is Docker Swarm?

Swarm serves the standard Docker API, so any tool which already communicates with a Docker daemon can use Swarm to transparently scale to multiple hosts: Dokku, Compose, Krane, Deis, DockerUI, Shipyard, Drone, Jenkins... and, of course, the Docker client itself.
Docker Swarm is a tool in the Container Tools category of a tech stack.
Docker Swarm is an open source tool with 5.6K GitHub stars and 1.1K GitHub forks. Here’s a link to Docker Swarm's open source repository on GitHub

Who uses Docker Swarm?

Companies
80 companies use Docker Swarm in their tech stacks, including Docker, Bugsnag, and Dial Once.

Developers
38 developers use Docker Swarm.

Docker Swarm Integrations

Docker, Rancher, Portainer, Docker for AWS, and Azure Container Service are some of the popular tools that integrate with Docker Swarm. Here's a list of all 17 tools that integrate with Docker Swarm.

Why developers like Docker Swarm?

Here’s a list of reasons why companies and developers use Docker Swarm
Docker Swarm Reviews

Here are some stack decisions, common use cases and reviews by companies and developers who chose Docker Swarm in their tech stack.

Yshay Yaacobi
Yshay Yaacobi
Software Engineer · | 26 upvotes · 94.3K views
atSoluto
Docker Swarm
Kubernetes
Visual Studio Code
Go
TypeScript
JavaScript
C#
F#
.NET

Our first experience with .NET core was when we developed our OSS feature management platform - Tweek (https://github.com/soluto/tweek). We wanted to create a solution that is able to run anywhere (super important for OSS), has excellent performance characteristics and can fit in a multi-container architecture. We decided to implement our rule engine processor in F# , our main service was implemented in C# and other components were built using JavaScript / TypeScript and Go.

Visual Studio Code worked really well for us as well, it worked well with all our polyglot services and the .Net core integration had great cross-platform developer experience (to be fair, F# was a bit trickier) - actually, each of our team members used a different OS (Ubuntu, macos, windows). Our production deployment ran for a time on Docker Swarm until we've decided to adopt Kubernetes with almost seamless migration process.

After our positive experience of running .Net core workloads in containers and developing Tweek's .Net services on non-windows machines, C# had gained back some of its popularity (originally lost to Node.js), and other teams have been using it for developing microservices, k8s sidecars (like https://github.com/Soluto/airbag), cli tools, serverless functions and other projects...

See more
Google Compute Engine
GitLab CI
Docker Swarm
Docker
Node.js
#DeploymentWorkflow

I have got a small radio service running on Node.js. I use Docker for my #DeploymentWorkflow along with Docker Swarm and GitLab CI on a single Google Compute Engine instance, which is also a runner itself. Pretty unscalable decision but it works great for tiny projects.

See more

Docker Swarm Alternatives & Comparisons

What are some alternatives to Docker Swarm?
Docker Compose
With Compose, you define a multi-container application in a single file, then spin your application up in a single command which does everything that needs to be done to get it running.
Rancher
Rancher is an open source container management platform that includes full distributions of Kubernetes, Apache Mesos and Docker Swarm, and makes it simple to operate container clusters on any cloud or infrastructure platform.
Ansible
Ansible is an IT automation tool. It can configure systems, deploy software, and orchestrate more advanced IT tasks such as continuous deployments or zero downtime rolling updates. Ansible’s goals are foremost those of simplicity and maximum ease of use.
Apache Mesos
Apache Mesos is a cluster manager that simplifies the complexity of running applications on a shared pool of servers.
Kubernetes
Kubernetes is an open source orchestration system for Docker containers. It handles scheduling onto nodes in a compute cluster and actively manages workloads to ensure that their state matches the users declared intentions.
See all alternatives

Docker Swarm's Stats