Este artigo avançado mostra como instalar o n8n usando Node.js e NPM. Este método oferece mais controle sobre a configuração e é ideal para ambientes personalizados.
Caso deseje realizar a instalação do n8n via docker - Confira como fazer
Confira abaixo:
- Requisitos
- Etapa 1: Acessar o terminal e atualizar o sistema
- Etapa 2: Instalar Node.js
- Etapa 3: Instalar e configurar PostgreSQL
- Etapa 4: Instalar o n8n via NPM
- Etapa 5: Configurar variáveis de ambiente
- Etapa 6: Configurar n8n como serviço
- Etapa 7: Acessar o n8n
Requisitos
- Sistema Linux: compatível com Almalinux, Ubuntu 22.04, Rocky Linux 9, Debian 12/13.
- Acesso root via SSH - Confira como acessar
- Mínimo 2 GB de RAM
- 20 GB de espaço em disco livre
Etapa 1: Acessar o terminal e atualizar o sistema
1Conecte-se ao servidor VPS via SSH
2Atualize os pacotes do sistema:
- Para AlmaLinux, Rocky (distribuições baseadas em RHEL):
sudo dnf update –y sudo dnf install -y epel-release curl wget git
- Para Ubuntu/Debian:
sudo apt update && sudo apt upgrade -y sudo apt install -y curl wget git build-essential
Etapa 2: Instalar Node.js
O n8n é construído com Node.js, então precisamos instalá-lo primeiro, para isso siga o procedimento de acordo ao Sistema operacional que tem:
Para AlmaLinux/Rocky
1Resete qualquer módulo Node.js existente:
sudo dnf module reset nodejs –y
2Agora, para habilitar node.js (versão 20) digite o comando abaixo:
sudo dnf module enable nodejs:20 –y
3Em seguida, instale o node.js e npm:
sudo dnf install -y nodejs npm
4Para verificar a instalação, digite:
node -v npm –v
Para Ubuntu/Debian
1Adicione o repositório do Node.js 20:
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash - sudo apt install -y nodejs
2Para verificar a instalação, digite:
node -v npm –v
Etapa 3: Instalar e configurar PostgreSQL
O PostgreSQL é o banco de dados que armazenará todos os seus workflows e credenciais
Confira o procedimento de acordo ao sistema operacional que tenha:
Para AlmaLinux/Rocky
1Para instalar o PostgreSQL, digite o seguinte comando:
sudo dnf install -y postgresql-server postgresql
2Agora, inicie o banco de dados com o seguinte comando:
sudo postgresql-setup --initdb
3Habilite e inicie o serviço com o seguinte comando:
sudo systemctl enable --now postgresql
4Em seguida, verifique o status:
sudo systemctl status postgresql
5Acesse o console do PostgreSQL, para isso, digite:
sudo -u postgres psql
6Em seguida, para criar o usuário e o banco de dados, execute os comandos:
CREATE USER n8n WITH ENCRYPTED PASSWORD 'SuaSenhaForteAqui123!'; CREATE DATABASE n8n OWNER n8n; GRANT ALL PRIVILEGES ON DATABASE n8n TO n8n; \q
Substitua “SuaSenhaForteAqui123!” por uma senha forte e única!
7Por padrão, o PostgreSQL usa autenticação "peer" ou "ident", que não aceita senha. Precisamos alterar isso para md5, para isso é necessário editar o arquivo de configuração:
sudo nano /var/lib/pgsql/data/pg_hba.conf
8Adicione estas linhas no início da seção de regras:
# n8n database connection local n8n n8n md5 host n8n n8n 127.0.0.1/32 md5
9Salve e feche o arquivo (Ctrl + X, depois Y, depois Enter)
10Reinicie o PostgreSQL para aplicar as mudanças:
sudo systemctl restart postgresql
11Agora, verifique se a autenticação está funcionando corretamente:
psql -U n8n -d n8n -h 127.0.0.1 -W
12Digite a senha que você criou (no passo 3) - Se conseguir acessar o console do PostgreSQL, está tudo certo!
13Para sair, digite:
\q
Para Ubuntu/Debian
1Para instalar PostgreSQL, digite o seguinte comando:
sudo apt install -y postgresql postgresql-contrib sudo systemctl enable --now postgresql
2Em seguida, verifique o status:
sudo systemctl status postgresql
3Depois, acesse o console do PostgreSQL:
sudo -u postgres psql
4Crie o usuário e banco de dados, para isso execute:
CREATE USER n8n WITH ENCRYPTED PASSWORD 'SuaSenhaForteAqui123!'; CREATE DATABASE n8n OWNER n8n; GRANT ALL PRIVILEGES ON DATABASE n8n TO n8n; \q
Substitua “SuaSenhaForteAqui123!” por uma senha forte e única!
5Por padrão, o PostgreSQL usa autenticação "peer" ou "ident", que não aceita senha. Precisamos alterar isso para md5, para isso é necessário editar o arquivo de configuração:
sudo nano /etc/postgresql/14/main/pg_hba.conf
Substitua 14 pela versão instalada, se necessário. Para verificar: psql --version
6Adicione estas linhas no início da seção de regras:
# n8n database connection local n8n n8n md5 host n8n n8n 127.0.0.1/32 md5
Exemplo completo:
# n8n database connection local n8n n8n md5 host n8n n8n 127.0.0.1/32 md5 # "local" is for Unix domain socket connections only local all all peer # IPv4 local connections: host all all 127.0.0.1/32 ident
7Salve e feche o arquivo (Ctrl + X, depois Y, depois Enter)
8Reinicie o PostgreSQL para aplicar as mudanças:
sudo systemctl restart postgresql
9Agora, verifique se a autenticação está funcionando corretamente:
psql -U n8n -d n8n -h 127.0.0.1 -W
10Digite a senha que você criou (no passo 3) - Se conseguir acessar o console do PostgreSQL, está tudo certo!
11Para sair, digite:
\q
Etapa 4: Instalar o n8n via NPM
Agora vamos instalar o n8n globalmente no sistema, para isso confira o passo a passo abaixo:
1Para instalar o n8n, digite o comando:
npm install -g n8n
2Agora, verifique a instalação, com o seguinte comando:
n8n –v
Etapa 5: Configurar variáveis de ambiente
Antes de iniciar o n8n, precisamos configurar as variáveis de ambiente para conectar ao PostgreSQL
1Crie um arquivo de configuração:
sudo mkdir -p /etc/n8n sudo nano /etc/n8n/config.env
2Adicione as seguintes variáveis:
DB_TYPE=postgresdb DB_POSTGRESDB_HOST=127.0.0.1 DB_POSTGRESDB_PORT=5432 DB_POSTGRESDB_DATABASE=n8n DB_POSTGRESDB_USER=n8n DB_POSTGRESDB_PASSWORD=SuaSenhaForteAqui123! N8N_HOST=0.0.0.0 N8N_PORT=5678 N8N_PROTOCOL=http WEBHOOK_URL=http://SEU_IP_DA_VPS:5678/ N8N_ENCRYPTION_KEY=sua-chave-de-criptografia-muito-forte-aqui
Substitua:
-
SuaSenhaForteAqui123!pela senha do PostgreSQL que você criou -
SEU_IP_DA_VPSpelo IP do seu servidor – confira como localizar. Se usar domínio, altere WEBHOOK_URL para https://n8n.seudominio.com.br/ -
Gere uma chave de criptografia forte e única para
N8N_ENCRYPTION_KEY=sua-chave-de-criptografia-muito-forte-aqui
3Salve e feche o arquivo – Aperte enter em Ctrl + X, depois Y, depois Enter
4Ajuste as permissões, digite:
sudo chmod 600 /etc/n8n/config.env
Etapa 6: Configurar n8n como serviço
Para que o n8n inicie automaticamente com o sistema e continue rodando em segundo plano:
1Crie um usuário dedicado para o n8n:
sudo useradd -r -s /bin/false n8n-service
2Crie o arquivo de serviço systemd:
sudo nano /etc/systemd/system/n8n.service
3Adicione o seguinte conteúdo:
[Unit] Description=n8n - Workflow Automation After=network.target postgresql.service Requires=postgresql.service [Service] Type=simple User=n8n-service EnvironmentFile=/etc/n8n/config.env ExecStart=/usr/bin/n8n start Restart=on-failure RestartSec=10 [Install] WantedBy=multi-user.target
4Salve e feche o arquivo - Aperte as teclas Ctrl + X, depois Y, depois Enter
5Recarregue o systemd e inicie o serviço:
sudo systemctl daemon-reload sudo systemctl enable n8n sudo systemctl start n8n
6Verifique o status:
sudo systemctl status n8n
7Comandos úteis para gerenciar o serviço:
- Parar o n8n
sudo systemctl stop n8n
- Reiniciar o n8n
sudo systemctl restart n8n
- Verificar logs em tempo real
sudo journalctl -u n8n -f
Etapa 7: Acessar o n8n
1Abra o navegador e digite o endereço correspondente ao seu servidor:
- Se usa a IP do servidor digite: http://SU_IP_DA_VPS:5678
Substitua "SU_IP_DA_VPS" pelo IP do seu servidor. Exemplo: http://123.123.1.100:5678 - Confira como localizar
- Se usa um domínio configurado, digite: https://n8n.sudominio.com
Substitua o “seudominio.com.br” pelo que possui registrado
2Na tela de login, na primeira vez, você verá uma tela para criar sua conta:
- Digite seu e-mail
- Digite seu nome
- Crie uma senha forte
Pronto! Agora você já está na aplicação (ou painel) n8n e com as configurações feitas