CPU:
RAM:
DISCO:
UPTIME:
🔑 Clave de acceso para acciones:
⚡ Servicios
📖 Cómo agregar una web
Servicios activos
de 8 total
IP Pública
20.246.108.74
mq-vtl-prd-cgm
CPU
uso actual
RAM

Servicios del servidor

Comercial CGM
/var/www/comercialWEBCGM
cargando…
:8001
JD Web
/var/www/JD-WEB
cargando…
:8002
Asistencia Bus
/var/www/asistenciaBus
cargando…
:8003
Inteligencia CGM
/var/www/inteligenciaScriptsCGM
cargando…
:8007
Entrega Técnica
/var/www/entregaTecnica
cargando…
:8008
Reportes Gerencia PBI
/var/www/reportesPowerBIWeb
cargando…
:8011
Reportes Jefatura PBI
/var/www/reportesJefatura
cargando…
:8012
n8n Automatización
/opt/n8n
cargando…
:5678

Cómo agregar una nueva web al servidor

Sigue estos 5 pasos cada vez que quieras desplegar una nueva aplicación Flask o FastAPI.

0
Antes de empezar — elige un puerto libre

Cada app necesita un puerto distinto. Los siguientes ya están ocupados:

ServicioPuertoEstado
comercialCGM8001● ocupado
jdweb8002● ocupado
asistenciaBus8003● ocupado
inteligenciaCgm8007● ocupado
entregaTecnica8008● ocupado
reportesPowerBIWeb8011● ocupado
reportesJefatura8012● ocupado
cgm-admin (este panel)8014● ocupado
8004, 8006, 8009, 8010, 8015+✓ libres
1
Crear directorio y subir archivos

Crea la carpeta de la app en el servidor:

bash
sudo mkdir /var/www/miNuevaApp sudo chown admincgm:www-data /var/www/miNuevaApp

Luego sube tus archivos por SFTP, SCP o git clone al directorio creado.

2
Crear entorno virtual e instalar dependencias

Para apps Flask:

bash
cd /var/www/miNuevaApp python3 -m venv venv venv/bin/pip install flask gunicorn sqlalchemy pyodbc

Para apps FastAPI:

bash
cd /var/www/miNuevaApp python3 -m venv venv venv/bin/pip install fastapi uvicorn[standard] gunicorn

Si tienes un requirements.txt:

bash
venv/bin/pip install -r requirements.txt
3
Crear el servicio systemd

Crea el archivo de servicio (reemplaza miNuevaApp y PUERTO):

bash
sudo nano /etc/systemd/system/miNuevaApp.service

Contenido para Flask:

[Unit] Description=miNuevaApp After=network.target [Service] User=admincgm Group=www-data WorkingDirectory=/var/www/miNuevaApp Environment="PATH=/var/www/miNuevaApp/venv/bin" ExecStart=/var/www/miNuevaApp/venv/bin/gunicorn \ --workers 3 --bind 127.0.0.1:PUERTO app:app Restart=always RestartSec=5 [Install] WantedBy=multi-user.target

Para FastAPI, cambia ExecStart por:

ExecStart=/var/www/miNuevaApp/venv/bin/gunicorn \ --workers 2 --worker-class uvicorn.workers.UvicornWorker \ --bind 127.0.0.1:PUERTO main:app

Activar el servicio:

sudo systemctl daemon-reload sudo systemctl enable miNuevaApp sudo systemctl start miNuevaApp sudo systemctl status miNuevaApp
4
Configurar Nginx
bash
sudo nano /etc/nginx/sites-available/miNuevaApp
server { server_name midominio.cgmrental.com.pe; client_max_body_size 200M; location / { proxy_pass http://127.0.0.1:PUERTO; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } location /static/ { alias /var/www/miNuevaApp/static/; expires 30d; } }
sudo ln -s /etc/nginx/sites-available/miNuevaApp /etc/nginx/sites-enabled/ sudo nginx -t sudo systemctl reload nginx
5
Generar certificado SSL (HTTPS)

Asegúrate de que el DNS del dominio ya apunta a la IP 20.246.108.74 antes de correr esto:

sudo certbot --nginx -d midominio.cgmrental.com.pe
⚠️ Certbot configura el SSL automáticamente y programa la renovación. No es necesario tocarlo después.
Comandos de gestión rápida
AcciónComando
Ver logs en vivojournalctl -u miNuevaApp -f
Ver últimos erroresjournalctl -u miNuevaApp -n 50 --no-pager
Reiniciar serviciosudo systemctl restart miNuevaApp
Ver puertos activosss -tlnp | grep 80
Ver todos los serviciossystemctl list-units --type=service --state=active

Logs