Como instalar n8n em VPS Brasil com Docker, PostgreSQL e HTTPS | Tutoriais Toda Solução

8 min de leitura Infraestrutura

Introdução

O n8n é uma ferramenta de automação de fluxo de trabalho de código aberto que permite integrar diferentes serviços e APIs de forma fácil e intuitiva. Neste tutorial, você aprenderá a instalar o n8n em uma VPS no Brasil, utilizando Docker para facilitar a gestão de containers, PostgreSQL como banco de dados para armazenar suas informações e habilitar HTTPS para garantir a segurança das suas conexões.

O uso do Docker simplifica a instalação e a execução do n8n, permitindo que você execute a aplicação em um ambiente isolado e facilmente gerenciável. O PostgreSQL, por sua vez, é uma escolha robusta e confiável para o armazenamento de dados, enquanto o HTTPS protege a comunicação entre o usuário e o servidor, evitando interceptações.

Ao final deste tutorial, você terá uma instalação do n8n completamente funcional e segura, pronta para automatizar seus processos e integrar serviços. Vamos começar!

Pré-requisitos

Antes de iniciar a instalação do n8n em sua VPS, é fundamental garantir que você possui os seguintes pré-requisitos:

  1. Uma VPS no Brasil: Você deve ter uma VPS funcionando, com acesso root ou permissões de sudo.
  2. Sistema Operacional: O tutorial foi elaborado considerando distribuições baseadas em Debian ou Ubuntu. Certifique-se de que sua VPS utiliza um desses sistemas.
  3. Docker: O Docker deve estar instalado em sua VPS. Caso ainda não tenha, você pode instalá-lo seguindo as instruções na seção de instalação do Docker.
  4. PostgreSQL: Você precisará ter o PostgreSQL instalado e configurado. Na seção de configuração do PostgreSQL, você encontrará os passos necessários.
  5. Nome de domínio: Um domínio registrado que apontará para o IP da sua VPS. Isso é essencial para a configuração do HTTPS.
  6. Certificados SSL: Para habilitar HTTPS, você precisará de certificados SSL. Você pode obtê-los através de serviços como Let's Encrypt.

Certifique-se de atender a todos os pré-requisitos antes de prosseguir com a instalação do n8n.

Instalação do Docker

Para instalar o Docker em sua VPS, siga os passos abaixo:

sudo apt update && sudo apt upgrade -y
sudo apt install apt-transport-https ca-certificates curl software-properties-common -y
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"
sudo apt update
sudo apt install docker-ce -y
sudo systemctl status docker
sudo usermod -aG docker $USER
  1. Atualize os pacotes do sistema:
  2. Instale os pacotes necessários para permitir que o apt use pacotes via HTTPS:
  3. Adicione a chave GPG oficial do Docker:
  4. Adicione o repositório do Docker:
  5. Atualize o banco de dados de pacotes novamente:
  6. Instale o Docker:
  7. Verifique se o Docker foi instalado corretamente:
  8. Adicione seu usuário ao grupo docker para executar comandos sem sudo:

Após a instalação, é recomendável reiniciar sua VPS para que as alterações do grupo tenham efeito.

Configuração do PostgreSQL

Após instalar o PostgreSQL, você precisa configurá-lo para que o n8n possa se conectar corretamente. Siga os passos abaixo:

sudo -u postgres psql
CREATE DATABASE n8n;
CREATE USER n8n_user WITH PASSWORD 'sua_senha_forte';
GRANT ALL PRIVILEGES ON DATABASE n8n TO n8n_user;
EXIT;
sudo nano /etc/postgresql/12/main/postgresql.conf
listen_addresses = '*'
sudo nano /etc/postgresql/12/main/pg_hba.conf
host    all             all             0.0.0.0/0            md5
sudo systemctl restart postgresql
  1. Conecte-se ao PostgreSQL usando o seguinte comando:
  2. Crie um banco de dados para o n8n:
  3. Crie um usuário para o n8n e defina uma senha:
  4. Conceda permissões ao usuário no banco de dados:
  5. Saia do console do PostgreSQL:
  6. Edite o arquivo de configuração do PostgreSQL para permitir conexões externas. Abra o arquivo postgresql.conf:
  7. Localize a linha #listen_addresses = 'localhost' e altere para:
  8. Salve e feche o arquivo. Em seguida, edite o pg_hba.conf para permitir conexões:
  9. Adicione a seguinte linha ao final do arquivo:
  10. Reinicie o PostgreSQL para aplicar as mudanças:

Agora, seu PostgreSQL está configurado e pronto para ser utilizado pelo n8n.

Instalação do n8n

Agora que o Docker e o PostgreSQL estão configurados, vamos instalar o n8n utilizando o Docker. Siga os passos abaixo:

mkdir ~/n8n
cd ~/n8n
version: '3'
services:
  n8n:
    image: n8nio/n8n
    restart: always
    ports:
      - "5678:5678"
    environment:
      - DB_TYPE=postgresdb
      - DB_POSTGRESDB_HOST=db
      - DB_POSTGRESDB_PORT=5432
      - DB_POSTGRESDB_DATABASE=n8n
      - DB_POSTGRESDB_USER=n8n
      - DB_POSTGRESDB_PASSWORD=your_password
      - N8N_BASIC_AUTH_ACTIVE=true
      - N8N_BASIC_AUTH_USER=your_username
      - N8N_BASIC_AUTH_PASSWORD=your_password
    depends_on:
      - db

  db:
    image: postgres
    restart: always
    environment:
      - POSTGRES_DB=n8n
      - POSTGRES_USER=n8n
      - POSTGRES_PASSWORD=your_password
    volumes:
      - ./postgres_data:/var/lib/postgresql/data
docker-compose up -d
  1. Crie um diretório para armazenar os dados do n8n:
  2. Entre no diretório criado:
  3. Crie um arquivo docker-compose.yml com o seguinte conteúdo:
  4. Substitua your_password e your_username por valores seguros.
  5. Inicie o n8n com o Docker Compose:

O n8n agora deve estar rodando. Você pode acessá-lo pelo navegador em http://seu_ip:5678.

Configuração do HTTPS

Para garantir a segurança da sua instalação do n8n, é essencial habilitar o HTTPS. Neste tutorial, utilizaremos o Let's Encrypt para obter um certificado SSL gratuito.

  1. Instale o Certbot, que é a ferramenta utilizada para obter e renovar certificados SSL:
sudo apt update
sudo apt install certbot
  1. Crie um arquivo de configuração do Docker para o n8n com suporte a HTTPS. Crie um arquivo chamado docker-compose.yml com o seguinte conteúdo:
version: '3'
services:
  n8n:
    image: n8n
    ports:
      - "5678:5678"
    environment:
      - N8N_HOST=seu_dominio.com
      - N8N_PROTOCOL=https
      - N8N_PORT=5678
      - N8N_SSL_CERT=/etc/letsencrypt/live/seu_dominio.com/fullchain.pem
      - N8N_SSL_KEY=/etc/letsencrypt/live/seu_dominio.com/privkey.pem
    volumes:
      - ~/.n8n:/home/node/.n8n
  1. Obtenha o certificado SSL usando o Certbot:
sudo certbot certonly --standalone -d seu_dominio.com
  1. Reinicie o n8n para aplicar as configurações:
docker-compose up -d

Com isso, o n8n estará acessível via HTTPS. Verifique acessando https://seu_dominio.com no seu navegador.

Verificação

Após a instalação e configuração do n8n, é importante verificar se tudo está funcionando corretamente. Siga os passos abaixo:

  1. Acesse o n8n pelo seu navegador utilizando o endereço configurado, por exemplo: https://seu_dominio.com.
  2. Verifique se a interface do n8n é carregada corretamente.
  3. Realize o login utilizando as credenciais que você configurou.
  4. Crie um novo fluxo de trabalho simples para testar a funcionalidade. Para isso, siga estes passos:
    • Clique em New para criar um novo workflow.
    • Adicione um nó de exemplo, como Set, e configure-o.
    • Conecte o nó e clique em Execute Workflow para verificar se está funcionando.
  5. Por fim, verifique os logs do Docker para garantir que não há erros. Utilize o seguinte comando:
docker logs n8n

Se tudo estiver funcionando corretamente, você verá mensagens indicando que o n8n está em execução sem problemas. Caso encontre algum erro, revise as configurações realizadas anteriormente.

Esse tutorial foi útil?

Comentários (0)

Seja o primeiro a comentar.

Deixe seu comentário

Seu comentário será analisado antes de ser publicado.

0/2000
WhatsApp