WAHA + Nginx usando motor GOWS (Nginx instalado en el host)
Este tutorial muestra cómo ejecutar varias instancias de WAHA en Docker usando el motor GOWS, y exponerlas todas a través de un solo Nginx instalado directamente en el servidor.
Requisitos
- VPS Linux (Ubuntu 20.04+ recomendado)
- Docker y Docker Compose instalados
- Nginx instalado en el host
- Puerto 80 abierto en el firewall
1️⃣ Instalar Nginx en el host
sudo apt update
sudo apt install -y nginx
Comprobar que funciona:
curl http://localhost
Si ves la página por defecto, Nginx está listo.
2️⃣ Ejecutar WAHA con Docker (motor GOWS)
Crear un directorio para WAHA:
mkdir -p /home/docker/waha
cd /home/docker/waha
docker-compose.yml
services:
waha:
image: devlikeapro/waha
container_name: waha
ports:
- "3001:3000"
environment:
WAHA_API_KEY: demo123
WAHA_DASHBOARD_USERNAME: admin
WAHA_DASHBOARD_PASSWORD: demo123
WHATSAPP_DEFAULT_ENGINE: GOWS
WHATSAPP_DEFAULT_SESSION: default
LOG_LEVEL: info
volumes:
- ./sessions:/app/.sessions
Los puertos están ligados a
127.0.0.1, por lo que WAHA no es accesible desde internet, solo desde el servidor.
Levantar los contenedores:
docker compose up -d
3️⃣ Configurar Nginx (sitio por defecto)
Editar el archivo por defecto:
sudo nano /etc/nginx/sites-available/default
Contenido:
server {
listen 80 default_server;
listen [::]:80 default_server;
root /var/www/html;
index index.html;
location / {
proxy_pass http://127.0.0.1:3001/;
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;
}
}
Verificar y recargar:
sudo nginx -t
sudo systemctl reload nginx
Notas importantes
- GOWS consume menos memoria que WebJS
- Nginx facilita SSL, autenticación y control de acceso
- Ideal para VPS pequeñas o Always Free
Conclusión
Con esta arquitectura tenés varias instancias de WAHA, un solo puerto público, mejor seguridad y una base fácil de escalar.
Comentarios
Publicar un comentario