Logo

dev-resources.site

for different kinds of informations.

Como utilizar o PM2 para gerenciar aplicações

Published at
9/21/2023
Categories
programming
tutorial
beginners
pm2
Author
devaugusto
Author
10 person written this
devaugusto
open
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

pm2 Article's
30 articles in total
Favicon
Deploy NestJS and NextJS application in same server using pm2 and Nginx
Favicon
Guia de Comandos PM2
Favicon
🚀 Deploying Node.js Application with PM2, NGINX, and SSL Configuration 🚀
Favicon
Monitoring PM2 in production
Favicon
Mastering PM2: Optimizing Node.js and Next.js Applications for Performance and Scalability
Favicon
Setting Up PM2 for Multi-User Access on Ubuntu Instance
Favicon
Manual deployment of NestJS and Angular applications on a dedicated server via "Docker Compose" and "PM2"
Favicon
Build applications on NestJS and Angular and run them in two versions: via PM2 and via Docker Compose
Favicon
An example of a simple update of NestJS-mod libraries
Favicon
Using pm2 to Manage Node.js Applications
Favicon
Using Screen and PM2 for Deploying, Debugging, and Running NestJS in Production
Favicon
Host Multiple Node Apps with nginx, pm2 with SSL certificate
Favicon
Node.js PM2 Orchestration Explained
Favicon
Managing Logs with PM2 and pm2-logrotate
Favicon
Streamlining PM2 Startup for Node.js Applications: A Comprehensive Guide
Favicon
Managing Next.js and NestJS Applications in Production with PM2
Favicon
Deploy a Full Stack Web App to VPS Server with NGINX and PM2!
Favicon
Como utilizar o PM2 para gerenciar aplicações
Favicon
Guide to Running a Node Server in Nx Monorepo using PM2 Process Manager
Favicon
How to run old nodejs Project into new nodejs project
Favicon
CentOS 7 NodeJS Kurulumu
Favicon
How to start node.js app with pm2
Favicon
How to start node.js app with pm2
Favicon
Deploying Multiple NodeJS Servers on a Single DigitalOcean Droplet; Managed by PM2, Without Using an ecosystem.config.js file
Favicon
Automatic deploys with PM2, Caddy, and GitHub Actions
Favicon
Utilizando PM2 (Basico)
Favicon
Experience on PM2 Tricks to manage your NodeJs processes
Favicon
Deploy Nest JS App using PM2 on Linux (Ubuntu) Server
Favicon
Install PM2 (Process Manager 2)
Favicon
Generate server block (virtual hosts) for nginx dynamically

Featured ones: