Repolode
Unitech

Unitech/pm2

Un gestor de procesos para producción de aplicaciones Node.js y Bun, con balanceador de carga integrado que mantiene los procesos activos y los recarga sin tiempo de inactividad.

Estrellas
43,311
Forks
2,734
Issues abiertos
1,109
Último commit
hace 23 horas

¿Qué es?

PM2 es un gestor de procesos para ejecutar aplicaciones Node.js y Bun en producción. Mantiene los procesos activos, los reinicia si fallan y también puede iniciar y gestionar otros programas, como scripts de Python o binarios disponibles en el PATH.

Su modo cluster inicia varias instancias de una aplicación Node.js y distribuye entre ellas el tráfico HTTP, TCP y UDP, para que la aplicación pueda aprovechar todos los núcleos de CPU. El comando de recarga actualiza las aplicaciones en ejecución sin tiempo de inactividad. PM2 también ofrece supervisión desde la terminal, visualización y rotación de logs, y puede generar scripts de inicio para systemd, launchd y otros sistemas init, de modo que los procesos se reinicien junto con el servidor.

El comando de ejecución pm2-runtime está diseñado para ejecutar aplicaciones dentro de contenedores Docker. PM2 funciona en Linux, macOS y Windows, y es compatible con Node.js 18+ y Bun 1+.

Funciones clave

  • 01Mantiene en ejecución procesos de Node.js, Bun, Python y otros, y los reinicia si fallan.
  • 02El modo cluster distribuye el tráfico HTTP, TCP y UDP entre varias instancias.
  • 03Recarga aplicaciones en ejecución sin tiempo de inactividad.
  • 04Supervisión desde la terminal y visualización centralizada de logs en formato JSON o con formato legible.
  • 05Genera scripts de inicio para systemd, launchd y otros sistemas init.

Casos de uso

  • Ejecutar una API de Node.js en producción en un solo servidor y aprovechar todos los núcleos de CPU.
  • Desplegar aplicaciones en contenedores Docker con el comando pm2-runtime.
  • Actualizar un servicio en producción sin interrumpir las conexiones durante el lanzamiento de una versión.
  • Mantener los servicios en segundo plano en ejecución después de reiniciar el servidor.

Inicio rápido

  1. 1

    Instala PM2 globalmente con npm

    npm install pm2 -g
  2. 2

    Inicia tu aplicación con PM2

    pm2 start app.js
  3. 3

    Muestra la lista de aplicaciones en ejecución

    pm2 list

Antes de usarlo

  • Licenciado bajo AGPL 3.0, una licencia copyleft. Para otras licencias, contacta con los responsables del mantenimiento.
  • Requiere Node.js 18 o posterior, o Bun 1 o posterior.

Temas

Preguntas frecuentes

¿Qué es pm2?
Un gestor de procesos para producción de aplicaciones Node.js y Bun, con balanceador de carga integrado que mantiene los procesos activos y los recarga sin tiempo de inactividad. PM2 es un gestor de procesos para ejecutar aplicaciones Node.js y Bun en producción. Mantiene los procesos activos, los reinicia si fallan y también puede iniciar y gestionar otros programas, como scripts de Python o binarios disponibles en el PATH.
¿pm2 es gratuito? ¿Qué licencia tiene?
pm2 es open source bajo la licencia Other. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿pm2 sigue mantenido?
Mantenimiento activo. El último commit de pm2 fue el 21 oct 2026.
¿Para qué puedo usar pm2?
Ejecutar una API de Node.js en producción en un solo servidor y aprovechar todos los núcleos de CPU. Desplegar aplicaciones en contenedores Docker con el comando pm2-runtime. Actualizar un servicio en producción sin interrumpir las conexiones durante el lanzamiento de una versión. Mantener los servicios en segundo plano en ejecución después de reiniciar el servidor.
¿Cómo se instala pm2?
Instala PM2 globalmente con npm: npm install pm2 -g Inicia tu aplicación con PM2: pm2 start app.js Muestra la lista de aplicaciones en ejecución: pm2 list
¿Dónde consigo pm2?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/Unitech/pm2

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados