Docker Swarm · 4 min read · Feb 07, 2026
Come configurare e configurare un cluster Docker Swarm su Ubuntu

Docker Swarm è uno strumento che consente di distribuire un cluster di host Docker. È uno strumento di clustering nativo fornito da Docker che offre alta disponibilità e alte prestazioni per la tua applicazione distribuendola a tutti i nodi all’interno del cluster swarm.
In questo tutorial, ti mostreremo passo dopo passo come creare un cluster Swarm utilizzando Ubuntu 16.04. Creeremo un cluster swarm utilizzando 2 macchine server Ubuntu, 1 nodo server come manager e 1 altro come worker. E poi cercheremo di distribuire il semplice servizio Nginx al cluster swarm.
Prerequisiti
- 2 o più - Ubuntu 16.04 Server - manager 132.92.41.4
- worker01 132.92.41.5
- Privilegi di root
Cosa faremo?
- Configurare gli Host
- Installare Docker-ce
- Inizializzazione di Docker Swarm
- Distribuzione del primo servizio al cluster
Passo 1 - Configurare gli Host
Prima di installare qualsiasi pacchetto per il cluster swarm, configureremo il file hosts su entrambi i server.
Esegui i comandi qui sotto su tutti i server, ‘manager’ e ‘worker01’.
Modifica il file ‘/etc/hosts’ utilizzando l’editor vim.
vim /etc/hostsAggiungi la seguente configurazione alla fine della riga.
132.92.41.4 manager
132.92.41.5 worker01Salva ed esci.
Ora ping tutti i nodi utilizzando ‘hostname’ invece di utilizzare l’indirizzo IP.
ping -c 3 manager
ping -c 3 worker01E assicurati che funzioni su tutti gli host.

Passo 2 - Installare Docker-ce
Per creare il cluster swarm, dobbiamo installare Docker su tutti i nodi server. In questo passo, installeremo Docker-ce Community Edition su entrambi i server manager e worker01.
Installa le dipendenze di Docker-ce utilizzando il comando apt qui sotto.
sudo apt install apt-transport-https software-properties-common ca-certificates -yOra aggiungi la chiave di Docker e il repository di Docker-ce ai nostri server.
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
sudo echo "deb [arch=amd64] https://download.docker.com/linux/ubuntu xenial stable" > /etc/apt/sources.list.d/docker-ce.listAggiorna il repository e installa i pacchetti Docker-ce utilizzando il comando apt install qui sotto.
sudo apt update
sudo apt install docker-ce -yDopo che l’installazione è completata, avvia il servizio docker e abilitalo per avviarsi ogni volta all’avvio del sistema.
systemctl start docker
systemctl enable dockerDocker-ce è ora installato sui nostri nodi server.
Successivamente, configureremo Docker per funzionare come un utente normale o non-root.
Crea un nuovo utente di nome ‘mohammad’ e aggiungilo al gruppo ‘docker’.
useradd -m -s /bin/bash mohammad
sudo usermod -aG docker mohammadOra accedi all’utente ‘mohammad’ ed esegui il comando docker hello-world come qui sotto.
su - mohammad
docker run hello-worldE riceverai il messaggio hello world da Docker come mostrato qui sotto.

Passo 3 - Creare il Cluster Swarm
In questo passo, creeremo il Cluster Swarm dei nostri nodi. E per creare i nodi del cluster swarm, dobbiamo inizializzare la modalità swarm sul nodo ‘manager’ e poi unire il nodo ‘worker01’ al cluster.
Inizializza la modalità Docker Swarm eseguendo il comando docker qui sotto sul nodo ‘manager’.
docker swarm init --advertise-addr 132.92.41.4E riceverai il risultato come mostrato qui sotto.
Vedrai che il ‘join-token’ è stato generato dal nodo ‘manager’.
Successivamente, dobbiamo aggiungere il nodo ‘worker01’ al cluster ‘manager’. E per farlo, abbiamo bisogno di un ‘join-token’ dal nodo ‘manager’ del cluster, quindi assicurati di scriverlo sul tuo appunto.
Esegui il comando docker swarm join sul nodo ‘worker01’.
docker swarm join --token SWMTKN-1-5p5ujrr67rl2rlmyvrj56fksblbcrtaeirf7fj5r4snid2vn6y-918gbqr02m64xct43i2ssi4qs 132.92.41.4:2377Ora riceverai il risultato come mostrato qui sotto.
Il nodo ‘worker01’ è stato unito al cluster.
Controlla eseguendo il seguente comando sul nodo ‘manager’.
docker node lsOra vedi che il nodo ‘worker01’ è stato unito al cluster swarm.
Il Cluster Swarm è stato creato.
Passo 4 - Distribuzione del Primo Servizio al Cluster
In questo passo, creeremo e distribuiremo il nostro primo servizio al cluster swarm. Vogliamo creare un nuovo servizio Nginx web server che verrà eseguito sulla porta http predefinita 80, e poi esporlo sulla porta 8080 sul server host, e poi provare a replicare il servizio nginx all’interno del cluster swarm.
Crea Servizio
Crea un nuovo servizio Nginx chiamato ‘my-web’ ed espandi la porta HTTP del contenitore sulla porta 8080 sull’host.
docker service create --name my-web --publish 8080:80 nginx:1.13-alpineE quando è stato creato, controlla utilizzando il comando docker service qui sotto.
docker service lsE riceverai il risultato come mostrato qui sotto.
Il servizio Nginx è stato creato e distribuito al cluster swarm come servizio chiamato ‘my-web’, è basato su Nginx Alpine Linux, espone la porta HTTP del servizio contenitore sulla porta ‘8080’ sull’host, e ha solo 1 replica.
Repliche e Scala del Servizio
Ora faremo repliche per il servizio ‘my-web’. Faremo 2 repliche del servizio ‘my-web’, in modo che il servizio sia accessibile sui nodi ‘manager’ e ‘worker01’.
Per replicare il servizio ‘my-web’, esegui il seguente comando.
docker service scale my-web=2E dopo che è completo, controlla di nuovo utilizzando il comando docker service.
docker service lsE ora il server ha 2 repliche.

Apri il tuo browser web e digita l’indirizzo IP del nodo manager con la porta 8080.
E riceverai la pagina predefinita di Nginx.
Di seguito è riportato il risultato dal nodo ‘worker01’.
Il Cluster Swarm è stato creato e il servizio Nginx è stato completamente distribuito al nostro Cluster Swarm.
Riferimento
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.