Docker Swarm · 4 min read · Feb 07, 2026

Como Configurar e Configurar um Cluster Docker Swarm no Ubuntu

Docker Swarm é uma ferramenta que permite implantar um cluster de Hosts Docker. É uma ferramenta de clustering nativa fornecida pelo Docker que oferece alta disponibilidade e alto desempenho para sua aplicação, distribuindo-a por todos os nós dentro do cluster swarm.

Neste tutorial, mostraremos passo a passo como criar um Cluster Swarm usando o Ubuntu 16.04. Criaremos um cluster swarm usando 2 máquinas servidor Ubuntu, 1 nó servidor como gerente e 1 outro como trabalhador. E então tentaremos implantar o serviço simples Nginx no cluster swarm.

Pré-requisitos

  • 2 ou mais - Ubuntu 16.04 Server - gerente     132.92.41.4
  • worker01   132.92.41.5
  • Privilégios de root

O que faremos?

  1. Configurar Hosts
  2. Instalar Docker-ce
  3. Inicialização do Docker Swarm
  4. Implantando o Primeiro Serviço no Cluster

Passo 1 - Configurar Hosts

Antes de instalar qualquer pacote para o cluster swarm, configuraremos o arquivo hosts em ambos os servidores.

Execute os comandos abaixo em todos os servidores, ‘gerente’ e ‘worker01’.

Edite o arquivo ‘/etc/hosts’ usando o editor vim.

vim /etc/hosts

Adicione a seguinte configuração ao final da linha.

132.92.41.4    gerente  
132.92.41.5    worker01

Salve e saia.

Agora, faça ping em todos os nós usando ‘hostname’ em vez de usar o endereço IP.

ping -c 3 gerente  
ping -c 3 worker01

E certifique-se de que está funcionando em todos os hosts.

Configurar hosts

Passo 2 - Instalar Docker-ce

Para criar o cluster swarm, precisamos instalar o docker em todos os nós do servidor. Neste passo, instalaremos o Docker-ce Community Edition em ambos os servidores gerente e worker01.

Instale as dependências do Docker-ce usando o comando apt abaixo.

sudo apt install apt-transport-https software-properties-common ca-certificates -y

Agora adicione a chave do Docker e o repositório Docker-ce aos nossos servidores.

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.list

Atualize o repositório e instale os pacotes Docker-ce usando o comando apt install abaixo.

sudo apt update  
sudo apt install docker-ce -y

Após a instalação ser concluída, inicie o serviço docker e habilite-o para iniciar toda vez que o sistema for inicializado.

systemctl start docker  
systemctl enable docker

Docker-ce agora está instalado em nossos nós de servidor.

Em seguida, configuraremos o docker para rodar como um usuário normal ou usuário não-root.

Crie um novo usuário chamado ‘mohammad’ e adicione-o ao grupo ‘docker’.

useradd -m -s /bin/bash mohammad  
sudo usermod -aG docker mohammad

Agora faça login no usuário ‘mohammad’ e execute o comando docker hello-world conforme abaixo.

su - mohammad  
docker run hello-world

E você receberá a mensagem de hello world do docker conforme mostrado abaixo.

Instalar Docker-ce

Passo 3 - Criar o Cluster Swarm

Neste passo, criaremos o Cluster Swarm de nossos nós. E para criar os nós do cluster swarm, precisamos inicializar o modo swarm no nó ‘gerente’ e, em seguida, adicionar o nó ‘worker01’ ao cluster.

Inicialize o modo Docker Swarm executando o comando docker abaixo no nó ‘gerente’.

docker swarm init --advertise-addr 132.92.41.4

E você receberá o resultado conforme mostrado abaixo.

Você verá que o ‘join-token’ foi gerado pelo nó ‘gerente’.

Em seguida, precisamos adicionar o nó ‘worker01’ ao cluster ‘gerente’. E para fazer isso, precisamos de um ‘join-token’ do nó ‘gerente’ do cluster, então certifique-se de anotá-lo.

Execute o comando docker swarm join no nó ‘worker01’.

docker swarm join --token SWMTKN-1-5p5ujrr67rl2rlmyvrj56fksblbcrtaeirf7fj5r4snid2vn6y-918gbqr02m64xct43i2ssi4qs 132.92.41.4:2377

Agora você receberá o resultado conforme mostrado abaixo.

O nó ‘worker01’ foi adicionado ao cluster.

Verifique executando o seguinte comando no nó ‘gerente’.

docker node ls

Agora você verá que o nó ‘worker01’ foi adicionado ao cluster swarm.

O Cluster Swarm foi criado.

Passo 4 - Implantando o Primeiro Serviço no Cluster

Neste passo, criaremos e implantaremos nosso primeiro serviço no cluster swarm. Queremos criar um novo serviço de servidor web Nginx que será executado na porta http padrão 80 e, em seguida, expô-lo na porta 8080 no servidor host, e então tentar replicar o serviço nginx dentro do cluster swarm.

Criar Serviço

Crie um novo serviço Nginx chamado ‘my-web’ e exponha a porta HTTP do contêiner para a porta 8080 no host.

docker service create --name my-web --publish 8080:80 nginx:1.13-alpine

E quando for criado, verifique usando o comando docker service abaixo.

docker service ls

E você receberá o resultado conforme mostrado abaixo.

O serviço Nginx foi criado e implantado no cluster swarm como um serviço chamado ‘my-web’, é baseado no Nginx Alpine Linux, expõe a porta HTTP do serviço do contêiner para a porta ‘8080’ no host, e tem apenas 1 réplica.

Réplicas e Escalar o Serviço

Agora faremos réplicas para o serviço ‘my-web’. Faremos 2 réplicas do serviço ‘my-web’, para que o serviço esteja acessível nos nós ‘gerente’ e ‘worker01’.

Para replicar o serviço ‘my-web’, execute o seguinte comando.

docker service scale my-web=2

E após a conclusão, verifique novamente usando o comando docker service.

docker service ls

E agora o servidor tem 2 réplicas.

Réplicas e Escalar o Serviço

Abra seu navegador e digite o endereço IP do nó gerente com a porta 8080.

http://gerente:8080/

E você verá a página padrão do Nginx.

Abaixo está o resultado do nó ‘worker01’.

http://worker01:8080/

O Cluster Swarm foi criado, e o serviço Nginx foi completamente implantado em nosso Cluster Swarm.

Referência

Share: X/Twitter LinkedIn

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.