Pm2 (imagen destacada)

Tiro monedas al aire, pero hasta ahora nunca las pude agarrar.

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

Creamos un archivo en nuestro proyecto deno app.sh:

#!/bin/bash
denox run start

Guardamos el archivo (control + o) y luego cerramos el editor (control + x). Volvemos a teclear en la terminal:

chmod +x app.sh 

Debemos crear un demonio con PM2 así que paramos el servidor y ejecutamos el siguiente comando:

pm2 start /home/proyectosbeta/repositorioGit/deno/ApiRest --name api-rest-ejemplo-deno
Proyecto Deno usando Pm2
Proyecto Deno usando Pm2

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
Monitorear Pm2 - web
Monitorear Pm2 – web

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

Comments

comments


Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *