0 Try the Demo

Docker Swarm

Manage a Docker Swarm cluster, services, stacks, configs, secrets, and node agents.

Docker Swarm is Docker’s built-in clustering mode: several Docker hosts join one cluster and run services that Swarm schedules, replicates, and restarts across them. Use it instead of Compose projects when an app should run on more than one host or keep running when a host goes down.

Note

To manage other hosts, connect them as Remote Environments first. All Swarm actions apply to the currently selected environment.

Start a new Swarm or join an existing cluster from the selected environment.

Get started

  1. Select the environment and check Swarm → Cluster and Nodes.
  2. To add hosts, use Easy Join from the Cluster page, an environment’s detail page, or its row menu. Arcane fills in the manager address and join token for you.
  3. Create the app’s Configs and Secrets, then deploy from Stacks.
  4. Check rollout health and logs under Services and Tasks.

What’s in the workspace

Page What it covers
Cluster Initialize a Swarm, join, leave, unlock, rotate join tokens, update cluster spec.
Workloads Stacks, services, tasks, scaling, rollbacks, logs.
Nodes & Agents Node operations, agent coverage, deployment, and fixing agent links.
Configs & Secrets Create and delete configs and secrets, and when to use each.

Where the data comes from

Arcane reads cluster resources from the Swarm manager. Stacks are grouped by the com.docker.stack.namespace service label, so stacks created outside Arcane show up too.

Agents on individual nodes add access to each node’s own containers and images; services and stacks stay visible without them. See Nodes & Agents.

Permissions and modes

  • The selected environment must be running Docker in Swarm mode. Arcane shows the Swarm workspace only when the environment reports an active Swarm.
  • Full cluster management needs a Swarm manager environment. On a worker, you get read-only views.
  • Viewing Swarm resources needs swarm:read. Each change needs its own permission, such as swarm:init, swarm:join, swarm:nodes, swarm:services, swarm:stacks, or swarm:unlock. See the permission catalog.