Visitas: 28
Pm2 es una herramienta para ambientes de producción de aplicaciones de Node.JS o Deno. Básicamente esta herramienta nos sirve para levantar nuestra aplicación como un servicio demonio en nuestro servidor.
Obs:
- Asumo que se tiene instalado NodeJS y NPM, además de todo el proyecto de Deno.
- Asumo que se tiene instalado denox. Caso contrario hacer click aquí.
Entramos a la terminal y tecleamos lo siguiente:
npm install pm2 -g
Debemos crear un demonio con PM2 así que paramos el servidor y ejecutamos el siguiente comando:
pm2 start /home/proyectosbeta/repositorioGit/deno/ApiRest/app.ts --interpreter="deno" --interpreter-args="run --allow-net" --name api-rest-ejemplo-deno
Necesitamos configurar el script de startup del servidor.
pm2 startup
Sale por pantalla:
[PM2] Init System found: systemd proyectosbeta [PM2] To setup the Startup Script, copy/paste the following command: sudo env PATH=$PATH:/usr/bin /home/proyectosbeta/.npm-global/lib/node_modules/pm2/bin/pm2 startup systemd -u proyectosbeta --hp /home/proyectosbeta
Copiamos la última línea y ejecutamos en nuestra terminal:
sudo env PATH=$PATH:/usr/bin /home/proyectosbeta/.npm-global/lib/node_modules/pm2/bin/pm2 startup systemd -u proyectosbeta --hp /home/proyectosbeta
Sale por pantalla:
[Install] WantedBy=multi-user.target Target path /etc/systemd/system/pm2-proyectosbeta.service Command list [ 'systemctl enable pm2-proyectosbeta' ] [PM2] Writing init configuration in /etc/systemd/system/pm2-proyectosbeta.service [PM2] Making script booting at startup... [PM2] [-] Executing: systemctl enable pm2-proyectosbeta... Created symlink /etc/systemd/system/multi-user.target.wants/pm2-proyectosbeta.service → /etc/systemd/system/pm2-proyectosbeta.service. [PM2] [v] Command successfully executed. +---------------------------------------+ [PM2] Freeze a process list on reboot via: $ pm2 save [PM2] Remove init script via: $ pm2 unstartup systemd
Monitorear app:
pm2 monitor
Obs:
- Para acceder a la interfaz web, debes de tener una cuenta en Pm2 y darle permisos al proyecto. Los pasos para acceder se describen en la terminal al ejecutar pm2 monitor