Suporte humano pelo WhatsApp

Como instalar o n8n em uma VPS com Docker e SSL (passo a passo 2026)

Publicado em 15/09/2026 6 min de leitura

Como instalar o n8n em uma VPS com Docker e SSL - passo a passo 2026

O n8n virou a ferramenta favorita de quem quer automatizar processos sem pagar caro por plataformas como Zapier e Make. A grande vantagem é que ele pode ser instalado no seu próprio servidor: sem limite de execuções, sem cobrança por tarefa e com os seus dados sob o seu controle.

Neste guia você vai instalar o n8n em uma VPS Linux usando Docker, com domínio próprio e certificado SSL (HTTPS) automático. No final, você terá um n8n pronto para produção, recebendo webhooks e rodando 24 horas.

O que você vai precisar

  • Uma VPS com Ubuntu 22.04 ou 24.04, com pelo menos 2 GB de RAM (4 GB se pretende rodar muitos fluxos ou IA);
  • Um domínio ou subdomínio, por exemplo n8n.seudominio.com.br;
  • Acesso SSH à VPS como root (ou usuário com sudo).

Passo 1: apontar o domínio para a VPS

No painel onde o seu domínio está registrado (Registro.br, Cloudflare etc.), crie um registro do tipo A:

  • Nome: n8n
  • Valor: o IP da sua VPS

Se usar Cloudflare, deixe a nuvem cinza (somente DNS) durante a instalação, para o certificado SSL ser emitido sem problemas. A propagação costuma levar poucos minutos.

Passo 2: atualizar o servidor e instalar o Docker

Conecte na VPS via SSH e rode:

apt update && apt upgrade -y
curl -fsSL https://get.docker.com | sh
docker --version
docker compose version

O script oficial instala o Docker Engine e o plugin Docker Compose. Se os dois últimos comandos mostrarem as versões, está tudo certo.

Passo 3: liberar as portas no firewall

Se você usa o UFW, libere SSH, HTTP e HTTPS:

ufw allow 22/tcp
ufw allow 80/tcp
ufw allow 443/tcp
ufw enable

Repare que não vamos abrir a porta 5678 do n8n para a internet. Todo o acesso passará pelo proxy com HTTPS.

Passo 4: criar a pasta do projeto

mkdir -p /opt/n8n && cd /opt/n8n

Passo 5: criar o arquivo docker-compose.yml

Crie o arquivo com nano docker-compose.yml e cole o conteúdo abaixo, trocando n8n.seudominio.com.br pelo seu domínio:

services:
  n8n:
    image: docker.n8n.io/n8nio/n8n
    restart: always
    environment:
      - N8N_HOST=n8n.seudominio.com.br
      - N8N_PORT=5678
      - N8N_PROTOCOL=https
      - WEBHOOK_URL=https://n8n.seudominio.com.br/
      - GENERIC_TIMEZONE=America/Sao_Paulo
      - TZ=America/Sao_Paulo
    volumes:
      - n8n_data:/home/node/.n8n

  caddy:
    image: caddy:2
    restart: always
    ports:
      - "80:80"
      - "443:443"
    volumes:
      - ./Caddyfile:/etc/caddy/Caddyfile
      - caddy_data:/data
      - caddy_config:/config

volumes:
  n8n_data:
  caddy_data:
  caddy_config:

Usamos o Caddy como proxy reverso porque ele emite e renova o certificado SSL do Let’s Encrypt sozinho, sem nenhuma configuração extra.

Passo 6: criar o Caddyfile

Crie o arquivo com nano Caddyfile:

n8n.seudominio.com.br {
    reverse_proxy n8n:5678
}

Passo 7: subir os containers

docker compose up -d
docker compose logs -f

Aguarde alguns segundos até aparecer no log que o n8n está pronto e que o Caddy obteve o certificado. Aperte Ctrl + C para sair dos logs (os containers continuam rodando).

Agora acesse https://n8n.seudominio.com.br no navegador. Na primeira vez, o n8n pede para você criar a conta de administrador (owner). Use um e-mail real e uma senha forte.

Passo 8: testar um webhook

  1. Crie um novo workflow e adicione o nó Webhook;
  2. Copie a Production URL. Ela deve começar com o seu domínio em HTTPS;
  3. Ative o workflow e acesse a URL pelo navegador ou com curl.

Se a URL do webhook aparecer com localhost, revise a variável WEBHOOK_URL no docker-compose e rode docker compose up -d novamente.

Como atualizar o n8n

O n8n lança versões com frequência. Para atualizar, sem perder seus fluxos:

cd /opt/n8n
docker compose pull
docker compose up -d

Seus workflows e credenciais ficam salvos no volume n8n_data, então sobrevivem às atualizações.

Como fazer backup

O jeito mais simples é copiar o volume de dados periodicamente:

docker run --rm -v n8n_n8n_data:/data -v /root:/backup alpine \
  tar czf /backup/n8n-backup-$(date +%F).tar.gz -C /data .

O nome do volume leva o prefixo da pasta do projeto (n8n_). Confira com docker volume ls. Guarde os arquivos de backup fora da VPS também. Outra camada de segurança é usar os snapshots do servidor.

Problemas comuns

  • Certificado SSL não é emitido: confira se o domínio já aponta para o IP da VPS (ping n8n.seudominio.com.br) e se as portas 80 e 443 estão liberadas. No Cloudflare, deixe o proxy desativado na primeira emissão;
  • n8n lento ou reiniciando: normalmente é falta de memória. Veja com docker stats e considere uma VPS com mais RAM;
  • Webhooks do WhatsApp, Telegram ou Stripe não chegam: esses serviços exigem HTTPS válido e URL pública, justamente o que este guia configura.

Por que rodar o n8n em uma VPS e não no n8n Cloud

  • Sem limite de execuções: no plano cloud você paga por volume de execuções; na VPS, o limite é só o hardware;
  • Custo fixo e previsível, mesmo com centenas de fluxos;
  • Dados sob seu controle, importante para LGPD e dados de clientes;
  • Liberdade para instalar outras ferramentas no mesmo servidor, como Evolution API, bancos de dados e modelos de IA.

Quer entender melhor as diferenças? Leia Automação Sem Limites: Como Usar o n8n e Fugir do Zapier.

Conclusão

Com Docker e Caddy, instalar o n8n em uma VPS leva menos de 15 minutos e entrega um ambiente profissional: HTTPS automático, atualizações simples e execuções ilimitadas. É a base ideal para automatizar atendimento, vendas, integrações e agentes de IA.

Escolha sua VPS na AyooCloud e coloque seu n8n no ar hoje, com SSD NVMe, Anti-DDoS e suporte via WhatsApp.

Leia também