Why docker swarm is not popular as Kubernetes?

This page summarizes the projects mentioned and recommended in the original post on /r/docker

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • k3s

    Lightweight Kubernetes

  • If you're forced to use Kubernetes and don't use the cloud managed (and vendor locked) variety, then consider something like K3s or even RKE with either Rancher or Portainer. You'll make your own life more tolerable. And don't get caught up in running software that's too complicated either: Caddy or even just Nginx with Certbot (or the Kubernetes variety of it) will be fully sufficient for ingress with SSL/TLS in most cases. NFS will be good enough for sharing files across multiple pods as well and so on...

  • Caddy

    Fast and extensible multi-platform HTTP/1-2-3 web server with automatic HTTPS

  • If you're forced to use Kubernetes and don't use the cloud managed (and vendor locked) variety, then consider something like K3s or even RKE with either Rancher or Portainer. You'll make your own life more tolerable. And don't get caught up in running software that's too complicated either: Caddy or even just Nginx with Certbot (or the Kubernetes variety of it) will be fully sufficient for ingress with SSL/TLS in most cases. NFS will be good enough for sharing files across multiple pods as well and so on...

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • Portainer

    Making Docker and Kubernetes management easy.

  • the tooling around Docker Swarm is also pretty good and minimalist, for example, you can use Portainer (which also supports Kubernetes), much like you would use Rancher for easy administration of clusters

  • Nomad

    Nomad is an easy-to-use, flexible, and performant workload orchestrator that can deploy a mix of microservice, batch, containerized, and non-containerized applications. Nomad is easy to operate and scale and has native Consul and Vault integrations.

  • I'd say that for about 80%-90% of the environments out there, Docker Swarm or even Hashicorp Nomad are far better choices in regards to the operational complexity and the amount of resources that would be necessary to maintain the infrastructure. Yet, in reality, that's not what's going on.

  • rancher

    Complete container management platform

  • the tooling around Docker Swarm is also pretty good and minimalist, for example, you can use Portainer (which also supports Kubernetes), much like you would use Rancher for easy administration of clusters

  • microk8s

    MicroK8s is a small, fast, single-package Kubernetes for datacenters and the edge.

  • Docker Swarm comes out of the box with any installation of Docker and also can be set up both on-prem as well as in the cloud; contrast this to tools like Minikube, MicroK8s and Kubespray among many others

  • helm

    The Kubernetes Package Manager

  • all of the versions of the Compose specification are far simpler and easier to use when compared to Kubernetes manifests; there even isn't a single page that gives examples for making Kubernetes manifests like the link for Compose (the API docs are the closest thing AFAIK) and tools like Kustomize and Helm exist just to deal with this overcomplication

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • Docker Compose

    Define and run multi-container applications with Docker

  • the usefulness of parity with Docker Compose also cannot be overstated - you can usually get your stacks up and running with just some simple YAML changes

  • swarmkit

    A toolkit for orchestrating distributed systems at any scale. It includes primitives for node discovery, raft-based consensus, task scheduling and more.

  • Mostly it just needs resource defaults merged and some abstract type support so load balancer config doesn't have to be entirely by labels and I would never shift from it.

  • docker

    Discontinued Moby Project - a collaborative project for the container ecosystem to assemble container-based systems [Moved to: https://github.com/moby/moby]

  • That said, Swarm is definitely in maintenance mode, which is actually how some people like it, given that this means pretty good stability for the current features, instead of breaking changes, which are a slightly larger concern in the case of Kubernetes. However, this also means that new features will get implemented only occasionally, if ever - the last big one that i recall was Swarm jobs. Essentially, i'd say that it's still just a question of time until Swarm dies, but for now it's in the sweet spot of stability and usability if all that you need is a pretty simple and lightweight orchestrator.

  • kops

    Kubernetes Operations (kOps) - Production Grade k8s Installation, Upgrades and Management

  • Kubernetes is a PITA to get setup and running. (Though shoutout to kops for making this a little easier). There are also a lot of different ways to configure it which can be overwhelming. If you already have a cluster available to you though it's pretty rock solid.

  • traefik

    The Cloud Native Application Proxy

  • Also, Apache is definitely an option, but if i personally had to pick, i'd go with something like Caddy which is the best web server i've used to date, because of its ease of use (even if the feature parity for complex deployments isn't there). Well, if someone is also looking for something a tad more advanced for an ingress in particular, some speak highly of Traefik.

  • roadmap

    Welcome to the Public Roadmap for All Things Docker! We welcome your ideas. (by docker)

  • I'm pretty sure that this announcement was for their hosted services, not docker swarm mode, the engine feature. There's no mention of swarm-mode-the-engine-feature being deprecated. Classic Swarm has been deprecated because it's being replaced by the new implementation. Using "swarm" for the initial orchestration implementation, the new engine implementation, and their hosted service has caused a lot of confusion.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts