O n8n é uma das ferramentas mais instaladas nas VPS da LuraHosting. Este guia deixa ele no ar com domínio e HTTPS em cerca de 15 minutos, em uma VPS Ubuntu/Debian com 2 vCores e 4 GB (mínimo recomendado).
1. Aponte o domínio
No seu provedor de DNS, crie um registro A n8n.seudominio.com → IP da VPS. Espere propagar (ping n8n.seudominio.com deve responder o IP).
2. Instale o Docker
curl -fsSL https://get.docker.com | sh
3. Crie o projeto
mkdir -p /opt/n8n && cd /opt/n8n
nano docker-compose.yml
Conteúdo (troque n8n.seudominio.com, o e-mail e a senha):
services:
traefik:
image: traefik:v3
command:
- --providers.docker=true
- --providers.docker.exposedbydefault=false
- --entrypoints.web.address=:80
- --entrypoints.websecure.address=:443
- --entrypoints.web.http.redirections.entrypoint.to=websecure
- --certificatesresolvers.le.acme.tlschallenge=true
- --certificatesresolvers.le.acme.email=seu@email.com
- --certificatesresolvers.le.acme.storage=/letsencrypt/acme.json
ports: ["80:80", "443:443"]
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
- traefik_le:/letsencrypt
restart: unless-stopped
n8n:
image: n8nio/n8n:latest
environment:
- N8N_HOST=n8n.seudominio.com
- N8N_PROTOCOL=https
- WEBHOOK_URL=https://n8n.seudominio.com/
- GENERIC_TIMEZONE=America/Sao_Paulo
- N8N_ENCRYPTION_KEY=troque-por-uma-chave-longa-e-aleatoria
volumes:
- n8n_data:/home/node/.n8n
labels:
- traefik.enable=true
- traefik.http.routers.n8n.rule=Host(`n8n.seudominio.com`)
- traefik.http.routers.n8n.entrypoints=websecure
- traefik.http.routers.n8n.tls.certresolver=le
- traefik.http.services.n8n.loadbalancer.server.port=5678
restart: unless-stopped
volumes:
n8n_data:
traefik_le:
4. Libere as portas e suba
sudo ufw allow 80/tcp && sudo ufw allow 443/tcp
docker compose up -d
docker compose logs -f n8n # aguarde "Editor is now accessible"
Acesse https://n8n.seudominio.com e crie o usuário administrador. O certificado é emitido automaticamente pelo Let's Encrypt.
Atualizar
cd /opt/n8n && docker compose pull && docker compose up -d
Backup
Os fluxos e credenciais ficam no volume n8n_data. Inclua /var/lib/docker/volumes/n8n_n8n_data no seu backup automático para o Object Storage e guarde a N8N_ENCRYPTION_KEY, sem ela as credenciais do backup não abrem.
Problemas comuns
- Certificado não emite: o DNS ainda não propagou ou a porta 80 está bloqueada.
- Webhooks não chegam:
WEBHOOK_URLprecisa ser exatamente a URL pública comhttps://e barra final. - n8n lento com muitos fluxos: use Postgres em vez do SQLite padrão e considere upgrade de RAM.