DEV Community

Cover image for Como utilizar o PM2 para gerenciar aplicações
Augusto Klecz
Augusto Klecz

Posted on • Edited on

4 2 2 2 2

Como utilizar o PM2 para gerenciar aplicações

É muito comum que nós desenvolvedores precisemos de ferramentas que visam facilitar o desenvolvimento e organização na hora de desenvolver uma aplicação mais complexa.

O PM2 (Process-manager-2) é um gerenciador de pacotes bem popular de código aberto que visa melhorar a administração geral das suas aplicações Node.Js. Ele oferece ao desenvolvedor uma interface inteligente própria para ser exibida em CLI (Command-line-interface).

Interface:
Exemplo da interface do PM2

Algumas das funções que a utilização da ferramenta pode te proporcionar é a facilidade de gerenciamento através de comandos simples e automatizações que são realmente úteis.

Algumas das vantagens que você terá em utilizar o PM2:

  • Auto-start: O PM2 pode iniciar uma aplicação e mante-la online dioturnamente através do comando de inicialização atrelado a um comando da ferramenta.

  • Health checks: O PM2 pode realizar verificações de saúde em um aplicativo Node.js para garantir que ele esteja funcionando corretamente.

  • Log monitoring: O PM2 pode monitorar os logs de um aplicativo Node.js para identificar problemas.

  • Safe reloading: O PM2 oferece a capacidade de recarregar seus aplicativos Node.js sem interrupções de serviço. Isso é feito para garantir que os novos processos estejam em execução antes de desligar os antigos.

Algumas da desvantagens que você possivelmente encontrará no PM2:

  • Consumo de Recursos: Em alguns casos, utilizar um gerenciador de pacotes como a ferramenta apresentada, significará em um consumo de recursos excessivo em uma máquina mais simples.

  • Complexidade: Caso você nunca tenha utilizado um gerenciador de pacotes antes, é possível que você se sinta perdido a realizar os procedimentos pelas primeiras vezes, esta documentação é apenas um guia simples, temos muito mais conteúdos pela internet.


Instalação do PM2

sudo npm install -g pm2
pm2 startup (Para iniciar o processo)
Enter fullscreen mode Exit fullscreen mode

Caso você esteja utilizando uma VPS é possível que seja necessária a adição do processo no Firefwall.

sudo systemctl enable pm2-root (Ativa o processo)
sudo systemctl status pm2-root (Verificar status de funcionamento)
Enter fullscreen mode Exit fullscreen mode

Após a instalação, você receberá certamente receberá uma tela parecida com essa se o procedimento for feito de maneira correta:
Tela inicial


Utlização do PM2

Após a instalação, você pode adicionar o seu pacote atribuindo um nome a ele.

pm2 start your_project
pm2 status (Verifica se foi iniciado)
pm2 stop your_project (Desligar caso necessário)
Enter fullscreen mode Exit fullscreen mode

Como deixar o projeto online automaticamente?

É necessário para não termos na necessidade de ligar o projeto a todo momento.

Linha de comando:

sudo pm2 start "yarn dev" --name="your_project"
Enter fullscreen mode Exit fullscreen mode

O comando de inicialização manual do projeto deve ser o mesmo que for declarado entre as aspas após escrever start. Esta linha de comando evita que o processo da sua aplicação seja encerrado, mantendo-o sempre online.


Alguns comandos que podem ser úteis para o gerenciamento geral do seu projeto ou pacote:

sudo pm2 start Nome_do_Projeto (Ligar o projeto)
sudo pm2 stop Nome_do_Projeto (Desligar o projeto)
sudo pm2 logs Nome_do_Projeto (Visitar as logs)

Enter fullscreen mode Exit fullscreen mode

Você pode buscar outros comandos importantes relacionados ao PM2
na documentação oficial ou em outros conteúdos pela internet.



Prontinho! ✅ agora você sabe o básico sobre PM2, e já consegue geremciar uma aplicação utilizando esta ferramenta. Obrigado pela sua leitura até aqui.

 
Conheça a Cherry Code -> https://cherrycode.com.br

Image of Docusign

🛠️ Bring your solution into Docusign. Reach over 1.6M customers.

Docusign is now extensible. Overcome challenges with disconnected products and inaccessible data by bringing your solutions into Docusign and publishing to 1.6M customers in the App Center.

Learn more

Top comments (0)

A Workflow Copilot. Tailored to You.

Pieces.app image

Our desktop app, with its intelligent copilot, streamlines coding by generating snippets, extracting code from screenshots, and accelerating problem-solving.

Read the docs