Panel de Control Web Open Source
- Información General
- Características
- Tecnologías
- Despliegue
- Instalación
- Sugerencias
- Screenshots
- Licencia
- Autor
- Enlaces del Autor
PM2 WebUI es un panel de control open source desde la web para monitorear y administrar procesos haciendo uso de la API javascript de PM2. En el caso de la administración tiene la posibilidad de interactuar (iniciar, reiniciar, recargar, detener y eliminar) con cada uno de los procesos, así como la opción de desplegar nuevos procesos. En el caso del monitoreo al acceder a los procesos muestra los detalles específicos (id, pid, version, modo , nombre de espacio, uso de cpu, uso de memoria, reinicios, tiempo de actividad, directorio del proceso, directorio del script, intérpreter, git url, git branch, git commit, git comment), así como el registro de salida y errores de dicho proceso. Además cuenta con una terminal web integrada para realizar tareas administrativas directamente el servidor.
1. Backend:
- Soporte para HTTPS ✅
- Login seguro ✅
- Administración de los procesos ✅
- Descripción detallada de los procesos ✅
- Vista de logs de cada proceso ✅
- Información sobre repositorio GitHub (si es un proyecto clonado) ✅
- Despliegue de nuevos procesos ✅
- Cliente SSH sobre WebSocket ✅
2. Frontend:
- Interfaz moderna y responsiva (librería Tabler) ✅
- Modo Claro/Oscuro ✅
- Múltiples idiomas ✅
- Xterm (para la terminal integrada) ✅
- Clonar el repositorio
git clone https://github.com/andrygc/pm2-webui.git
- Acceder al repositorio descargado
cd pm2-webui
- Crear el archivo
.env
cp env.example .env
- Instalar las dependencias
npm install
- Configurar parámetros del sistema
npm run setup-system
- Iniciar el proyecto
# Iniciar servidor directamente
npm start
# Iniciar servidor directamente con pm2
npm run start:pm2
- Para uso en desarollo
# Iniciar en modo desarrollo
npm run start:dev
Note
Para el uso de la terminal se ejecuta un websocket con un cliente ssh, en el archivo terminal.html debe establecer la constante wsUrl con la url del websocket 😉
- Agregar soporte para rutas relativas
- Utilice fs-extra para operaciones del sistema de archivos
- Utilice jsonfile para la gestión de configuración
- Reemplace exec.util con execa
- Agregar gestión de entorno basada en formularios
- Agregar registros en tiempo real
- Agregar proveedor de Docker
MIT Copyright (c) 2024 Andry Noilien Guzmán Cardoza