> For the complete documentation index, see [llms.txt](https://docs.arkannis.net/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.arkannis.net/containerization/docker-swarm/set-up-docker-swarm.md).

# Set up docker swarm

{% hint style="info" %}
**Note:**

1. Docker has to be installed on the server
2. Docker swarm technology is already implemented into the docker installation
   {% endhint %}

{% hint style="info" %}
To install docker follow [this guide](/containerization/docker/install-docker-on-debian.md)
{% endhint %}

1. Enable docker swarm on master node

```bash
sudo docker swarm init --advertise-addr <master_node>
```

{% hint style="info" %}
This will print on screen a docker command that has to be run on every worker node
{% endhint %}

2\. Run command on worker nodes

```bash
sudo docker swarm join --token <TOKEN_STRING> <master_node>
```

3\. Verify if the nodes have actually joined the cluster successfully

```bash
sudo docker info
```

{% hint style="info" %}
**Notes:**

* To go more in depth about the nodes:

```bash
sudo docker node ls
```

* To get the token again, run the command on the master node:

```bash
sudo docker swarm join-token manager 
```

{% endhint %}
