Saltar al contenido principal

🚀 Módulo 7: Despliegue y producción

Este módulo te guía para publicar tu bot en un entorno de producción utilizando herramientas como PM2, servidores VPS, configuración de seguridad, y estrategias de escalabilidad. Esto te permitirá mantener el bot activo 24/7, sin depender de tu computadora local.


8.1 ¿Por qué desplegar?

Desplegar tu bot en producción te permite:

  • Mantenerlo disponible 24/7
  • Ejecutarlo desde un servidor externo
  • Integrar con otras APIs en la nube
  • Evitar cierres inesperados o QR caducado

8.2 Uso de PM2 para mantener el bot activo

Instalación:

npm install -g pm2

Ejecutar tu bot:

pm run dev         # o node index.js

Mantener activo con PM2:

pm run build       # si usas un bundler
pm run start

# o directamente
pm2 start index.js --name chatbot

Ver estado y logs:

pm2 status
pm2 logs chatbot

Guardar y reiniciar automáticamente:

pm2 save
pm2 startup # para reiniciar con el sistema

8.3 Despliegue en un VPS (Servidor Privado Virtual)

Puedes usar servicios como:

  • DigitalOcean
  • Linode
  • Contabo
  • AWS EC2 / Lightsail
  • Hetzner

Pasos básicos:

  1. Contrata un VPS con Ubuntu 20.04 o superior

  2. Accede por SSH:

    ssh usuario@IP_DEL_SERVIDOR
  3. Instala Node.js, Git y PM2

  4. Clona tu repositorio:

    git clone https://github.com/tuusuario/tu-bot.git
    cd tu-bot && npm install
    pm2 start index.js --name chatbot

8.4 Recomendaciones de seguridad

  • 🔐 Usa .env para almacenar claves/API keys
  • 🔒 Bloquea puertos innecesarios con ufw
  • 🚫 Nunca ejecutes con usuario root directamente
  • 🔁 Reinicia sesiones Baileys de forma controlada

8.5 Escalabilidad básica

  • Usa logs con herramientas como winston o pino
  • Divide tu código en módulos reutilizables
  • Si usas Meta API, puedes escalar horizontalmente
  • Considera usar colas como Redis o RabbitMQ para procesos pesados

✅ Resumen del Módulo 8

RecursoDescripción
PM2Mantiene tu bot activo incluso si cierras la terminal
VPSServidor remoto para producción 24/7
SeguridadProtección de claves, puertos y procesos
EscalabilidadMejora de rendimiento y organización modular

📦 ¿Qué sigue?

En el Módulo 9, exploraremos extensiones avanzadas como soporte multilenguaje, integración con GPT, logs inteligentes y paneles administrativos personalizados.