Docker Traefik · 6 min read · Feb 05, 2026
Guia Docker: Instalando Traefik - um Proxy Reverso Moderno para Microserviços

Traefik é um proxy reverso HTTP moderno e balanceador de carga para microserviços. Traefik torna fácil a implantação de todos os microserviços, integrado com componentes de infraestrutura existentes, como Docker, Swarm Mode, Kubernetes, Amazon ECS, Rancher, Etcd, Consul, etc.
Traefik serve como um roteador para todas as suas aplicações de microserviços, roteando todas as solicitações dos clientes para o destino correto dos microserviços.
Neste tutorial, vou mostrar passo a passo como instalar e configurar o proxy reverso moderno Traefik como um contêiner Docker no Ubuntu 18.04 LTS (Bionic Beaver).
Pré-requisitos
- Ubuntu 18.04
- Privilégios de root
O que faremos?
- Instalar Docker no Ubuntu 18.04
- Instalar Docker Compose
- Criar Rede Docker Personalizada
- Instalar e Configurar Traefik
- Testes
Passo 1 - Instalar Docker no Ubuntu 18.04
Para este guia, usaremos a versão mais recente do docker que pode ser instalada a partir do repositório oficial do docker.
Adicione a chave e o repositório do docker usando o comando abaixo.
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"O comando ‘add-apt-repository’ atualizará automaticamente todos os repositórios.

Agora instale o docker-ce mais recente.
sudo apt install docker-ceApós a conclusão da instalação, inicie o serviço docker e habilite-o para iniciar sempre que o sistema for inicializado.
systemctl start docker
systemctl enable dockerA edição comunitária do docker foi instalada no sistema Ubuntu 18.04, verifique a versão do docker instalada.
docker version
Adicional: Executando Docker para usuário não-root
O contêiner Docker pode ser executado sob um usuário não-root. Precisamos apenas adicionar o usuário ao grupo docker.
Adicione o usuário ‘mohammad’.
useradd -m -s /bin/bash mohammadAgora adicione o usuário ‘mohammad’ ao grupo docker e reinicie o serviço docker.
usermod -a -G docker mohammad
systemctl restart dockerTeste executando o hello-world do docker.
docker run -it hello-worldE o resultado será o seguinte.

Passo 2 - Instalar Docker Compose
Docker-Compose é uma ferramenta de linha de comando para definir e gerenciar aplicações docker de múltiplos contêineres.
Docker Compose é um script em python, pode ser instalado com o comando pip do python ou com o comando apt do repositório do Ubuntu facilmente. Com o compose, podemos executar múltiplos contêineres Docker com um único comando.
Instale o docker compose a partir do repositório usando o comando apt abaixo.
sudo apt install docker-composeApós a conclusão da instalação, verifique a versão do docker compose.
docker-compose versionO docker compose 1.17 foi instalado no Ubuntu 18.04.

Passo 3 - Criar Rede Docker Personalizada
Neste tutorial, o contêiner traefik estará rodando na rede docker personalizada. Portanto, precisamos criar uma nova rede docker personalizada no servidor.
Verifique a rede docker disponível no sistema.
docker network lsAgora crie uma nova rede personalizada chamada ‘proxy’ para o contêiner traefik.
docker network create proxyE você receberá uma string aleatória do nome do contêiner da rede. Verifique novamente a rede disponível.
docker network lsAbaixo está o resultado.

A rede docker personalizada chamada ‘proxy’ para traefik foi criada.
Passo 4 - Instalar e Configurar o Proxy Reverso Traefik
Neste passo, criaremos o contêiner traefik com HTTPS letsencrypt habilitado (usando um nome de domínio ‘traefik.hakase-labs.io’), e redirecionar automaticamente HTTP para HTTPS no traefik.
Pré-Instalação do Traefik
Antes de criar toda a configuração do traefik, precisamos instalar ‘apache2-utils’ para gerar a senha htpasswd criptografada e criar o novo diretório traefik.
Instale ‘apache2-utils’ usando o comando apt abaixo.
sudo apt install apache2-utils -yAgora execute o comando htpasswd abaixo para gerar uma nova senha para a autenticação do painel do traefik.
htpasswd -nb mohammad passwordMantenha o resultado em suas anotações.
mohammad:$apr1$hEgpZUN2$OYG3KwpzI3T1FqIg9LIbi.
Em seguida, faça login como usuário ‘mohammad’.
su - mohammadCrie um novo diretório chamado ‘traefik’ para toda a configuração do traefik.
mkdir -p traefik/
cd traefik/Criar Configuração do Traefik
Vá para o diretório ‘traefik’ e crie um novo arquivo de configuração ‘traefik.toml’ usando o editor vim.
cd traefik/
vim traefik.tomlCole a configuração abaixo.
#Traefik Global Configuration
debug = false
checkNewVersion = true
logLevel = "ERROR"
#Defina o EntryPoint para HTTP e HTTPS
defaultEntryPoints = ["https","http"]
#Habilite o Painel do Traefik na porta 8080
#com método de autenticação básica
#mohammad e password
[web]
address = ":8080"
[web.auth.basic]
users = ["mohammad:$apr1$hEgpZUN2$OYG3KwpzI3T1FqIg9LIbi."]
#Defina a porta HTTP 80 e
#porta HTTPS 443 EntryPoint
#Habilite redirecionamento automático de HTTP para HTTPS
[entryPoints]
[entryPoints.http]
address = ":80"
[entryPoints.http.redirect]
entryPoint = "https"
[entryPoints.https]
address = ":443"
[entryPoints.https.tls]
#Habilite a reenvio de uma solicitação se houver erro de rede
[retry]
#Defina a Configuração do Backend Docker
[docker]
endpoint = "unix:///var/run/docker.sock"
domain = "traefik.hakase-labs.io"
watch = true
exposedbydefault = false
#Registro Letsencrypt
#Defina o desafio HTTP ACME do Letsencrypt
[acme]
email = "[email protected]"
storage = "acme.json"
entryPoint = "https"
OnHostRule = true
[acme.httpChallenge]
entryPoint = "http"Salve e saia.
Nota:
Todas as informações sobre a configuração estão na seção de comentários ‘ #… ‘.
Criar Script Docker Compose do Traefik
Agora crie o script yml do docker-compose.
vim docker-compose.ymlCole a configuração abaixo.
version: '3'
services:
traefik:
image: traefik:latest
command: --docker --docker.domain=hakase-labs.io
ports:
- 80:80
- 443:443
networks:
- proxy
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./traefik.toml:/traefik.toml
- ./acme.json:/acme.json
labels:
- "traefik.frontend.rule=Host:traefik.hakase-labs.io"
- "traefik.port=8080"
container_name: traefik
restart: always
networks:
proxy:
external: trueSalve e saia.
Nota:
- Estamos criando um novo contêiner chamado ‘traefik’ baseado na imagem docker ‘traefik:latest’.
- O contêiner ‘traefik’ estará rodando na rede docker personalizada chamada ‘proxy’ e exporá as portas externas HTTP 80 e HTTPS 443.
- O contêiner montará a configuração do traefik ‘traefik.toml’ e ‘acme.json’, incluindo o arquivo docker sock.
- Configuração de rótulo para traefik, o nome de domínio da frontend e a porta do traefik.
Configuração ACME do Letsencrypt
A configuração acme no ‘traefik.toml’ é usada para gerar automaticamente o SSL letsencrypt. E é necessário para o arquivo de armazenamento ‘acme.json’.
Crie um novo arquivo JSON ‘acme.json’ e mude a permissão para ‘600’.
touch acme.json
chmod 600 acme.jsonTodos os logs sobre informações do SSL letsencrypt serão salvos no arquivo.
Construir Contêiner Traefik
Agora estamos prontos para construir nosso próprio contêiner traefik usando os arquivos de configuração acima.
cd traefik/
ls -lahTodas as configurações ‘traefik.toml’, ‘docker-compose.yml’ e ‘acme.json’.

Construa o contêiner usando o comando docker compose abaixo.
docker-compose up -dQuando estiver completo, verifique o contêiner em execução.
docker-compose psE você verá o contêiner Traefik em execução, expondo as portas externas HTTP e HTTPS.
Passo 5 - Testes
Abra seu navegador e digite o nome de domínio traefik na barra de endereços. O meu é:
http://traefik.hakase-labs.io/
Você será redirecionado para a conexão HTTPS e será solicitado a autenticação de nome de usuário e senha.
Faça login com o usuário ‘mohammad’ e a senha é ‘password’.
E você verá o painel do Traefik como abaixo.

Página de status de saúde do Traefik.

O proxy reverso HTTP moderno Traefik foi instalado como um contêiner Docker no Ubuntu 18.04.
Referência
Receba novas postagens na sua caixa de entrada
Sem spam. Cancele a assinatura a qualquer momento.