Servidor & DevOps 65 visualizações

Como configurar o PM2 para manter uma aplicação Node.js sempre no ar no VPS

Ver no WHMCS

Como configurar o PM2 para manter sua aplicação Node.js sempre no ar no VPS

Olá, querido desenvolvedor! Seja bem-vindo ao seu novo passo rumo à estabilidade e confiança no seu projeto. Aqui na GeHost, acreditamos que sua aplicação deve estar sempre disponível — e o PM2 é o seu fiel aliado nessa jornada. Vamos juntos montar isso de forma simples, segura e com muito carinho.

Antes de começar: este guia é para quem já tem um domínio hospedado com a GeHost, com acesso via SSH ao servidor (VPS), e está rodando uma aplicação Node.js. Se você ainda não tem isso, fale com nosso suporte — estamos aqui para te ajudar!

Passo 1: Acesse seu servidor via SSH

Para começar, você precisará se conectar ao seu servidor. Isso é feito com um cliente SSH, como o Putty (Windows) ou o terminal nativo (Linux/Mac).

Use o comando:

ssh usuario@seu-servidor

Substitua usuario pelo seu nome de usuário no servidor (geralmente o mesmo da conta no painel) e seu-servidor pelo endereço IP ou hostname fornecido pela GeHost.

Dica do Sensei: Se você não sabe seu usuário ou servidor, acesse o painel do cliente e confira as informações no seu plano. Se precisar de ajuda, basta pedir ao nosso suporte — estamos aqui!

Passo 2: Instale o PM2 globalmente

O PM2 é uma ferramenta poderosa que gerencia processos Node.js. Para instalá-lo, execute no terminal:

npm install -g pm2

Isso instala o PM2 em todo o sistema, permitindo que ele gerencie suas aplicações mesmo após o fechamento da sessão.

Passo 3: Acesse a pasta da sua aplicação

Use o comando cd para navegar até a pasta onde está seu projeto Node.js. Por exemplo:

cd /home/seu-usuario/public_html/seu-projeto

Se você não tiver certeza da localização, verifique no painel do cliente ou no Gerenciador de Arquivos do cPanel.

Tela do Gerenciador de Arquivos do cPanel com a estrutura de pastas, incluindo public_html

Passo 4: Inicie sua aplicação com o PM2

Com a aplicação pronta, use o comando:

pm2 start app.js

Substitua app.js pelo nome do arquivo principal da sua aplicação (pode ser server.js, index.js, etc.).

Se você tiver um arquivo package.json com o script start, pode usar:

pm2 start npm -- start

Passo 5: Salve a configuração do PM2

Para garantir que sua aplicação seja reiniciada automaticamente após reinícios do servidor, salve a configuração:

pm2 save

Isso grava o estado atual dos processos, permitindo que o PM2 os recupere ao reiniciar o sistema.

Passo 6: Ative o PM2 no boot (inicialização automática)

Para que o PM2 comece a gerenciar seus processos toda vez que o servidor for ligado, execute:

pm2 startup

Ele vai gerar um comando com instruções específicas para o seu sistema. Execute exatamente o que ele mostrar — geralmente é algo como:

sudo env PATH=$PATH:/usr/bin /usr/lib/node_modules/pm2/bin/pm2 startup systemd -u usuario --hp /home/usuario

Isso garante que o PM2 inicie automaticamente com o sistema.

Passo 7: Verifique o status da aplicação

Para confirmar que tudo está funcionando, use:

pm2 status

Se tudo estiver certo, você verá sua aplicação listada com o status online.

Para ver logs em tempo real:

pm2 logs

Passo 8: (Opcional) Gerencie seu PM2 com comandos úteis

  • pm2 list — lista todas as aplicações gerenciadas.
  • pm2 stop app.js — para parar uma aplicação.
  • pm2 restart app.js — para reiniciar.
  • pm2 delete app.js — para remover do gerenciamento.
  • pm2 monit — monitoramento em tempo real de CPU e memória.

Pronto! Sua aplicação está sempre no ar!

Com esses passos, sua aplicação Node.js será mantida ativa mesmo após reinícios, falhas ou desligamentos. O PM2 cuida de tudo por você — como um bom mestre cuida do seu discípulo.

Atenção do Sensei: Se você precisar de ajuda com SSH, acesso ao servidor, ou tiver dúvidas sobre o funcionamento do seu plano, entre em contato com o suporte da GeHost. Estamos aqui para te ajudar, sempre.

Seu projeto está no ar — e você está no controle. Parabéns, mestre! 🌟

Precisa de Ajuda?

Nossa equipe está pronta para resolver suas dúvidas.