Ir para o conteúdo
Promovaweb

Rode o n8n com Docker Compose e Traefik no seu computador

Revisado em

Antes de começar

Rodar uma instância de estudos do n8n no computador, atrás do Traefik, com as configurações no arquivo .env.

  • Docker instalado e em execução, com Compose v2.
  • Porta 80 livre no computador.

Esta stack é para estudos e testes no seu computador. Ela coloca o n8n atrás do Traefik, o mesmo proxy reverso usado nas stacks de servidor deste hotsite. As configurações ficam em um arquivo .env. Assim você pratica com a mesma estrutura que vai encontrar depois em uma VPS de estudos.

Crie a pasta e o arquivo .env

Crie uma pasta chamada n8n-estudo e abra o terminal dentro dela. Grave este conteúdo em .env:

Terminal
# Versão do n8n usada nos estudos
N8N_VERSION=2.45.5
# Endereço local do editor
N8N_HOST=n8n.localhost
# Fuso dos agendamentos e do container
GENERIC_TIMEZONE=America/Sao_Paulo

Navegadores atuais resolvem nomes terminados em .localhost para o seu próprio computador. Por isso n8n.localhost funciona sem editar arquivos do sistema.

Crie o compose.yaml

Na mesma pasta, grave compose.yaml:

services:
traefik:
image: traefik:v3
restart: unless-stopped
command:
- "--providers.docker=true"
- "--providers.docker.exposedbydefault=false"
- "--entrypoints.web.address=:80"
ports:
- "80:80"
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
n8n:
image: n8nio/n8n:${N8N_VERSION}
container_name: n8n-estudo
restart: unless-stopped
labels:
- traefik.enable=true
- traefik.http.routers.n8n.rule=Host(`${N8N_HOST}`)
- traefik.http.routers.n8n.entrypoints=web
- traefik.http.services.n8n.loadbalancer.server.port=5678
environment:
- N8N_HOST=${N8N_HOST}
- N8N_PROTOCOL=http
- N8N_WEBHOOK_URL=http://${N8N_HOST}/
- N8N_PROXY_HOPS=1
- GENERIC_TIMEZONE=${GENERIC_TIMEZONE}
- TZ=${GENERIC_TIMEZONE}
- N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=true
volumes:
- n8n_data:/home/node/.n8n
volumes:
n8n_data:

O Compose lê o .env da mesma pasta e troca cada ${...} pelo valor do arquivo. O Traefik só publica serviços com traefik.enable=true e encaminha o endereço n8n.localhost para a porta 5678 do n8n. N8N_WEBHOOK_URL e N8N_PROXY_HOPS fazem o n8n mostrar a URL certa nos webhooks.

O volume n8n_data guarda o SQLite e a chave que cifra as credenciais. Para estudar, o SQLite atende.

Suba e abra o editor

Terminal
docker compose up -d
docker compose ps

Abra http://n8n.localhost e cadastre o usuário owner. Se a página não abrir, leia os logs com docker compose logs n8n e docker compose logs traefik antes de mudar a configuração.

Confira a persistência

Crie um workflow de estudo e execute:

Terminal
docker compose down
docker compose up -d

O workflow continua lá. O down remove os containers e preserva o volume. Acrescentar -v apaga o volume e tudo o que a instância guardou.

Para trocar de versão, mude N8N_VERSION no .env e siga o guia de atualização da instância de estudo.

Para montar ou revisar essa stack com orientação ao vivo, o Desenvolvimento Colaborativo da Dev Side Studio acompanha o trabalho no terminal, com você no controle dos comandos.

Confira o resultado

O editor abre em http://n8n.localhost e um workflow de estudo continua disponível depois de docker compose down e docker compose up -d.

Fontes e conferência

Conteúdo conferido na documentação oficial do n8n em 28 de outubro de 2026.