Cómo Instalar y Configurar n8n en Plesk con Docker y un Subdominio

Cómo Instalar y Configurar n8n en Plesk con Docker y un Subdominio

Si estás buscando una forma sencilla y eficiente de instalar n8n en tu servidor con Plesk Obsidian, usando Docker y un subdominio personalizado, este tutorial te guiará paso a paso para lograrlo. Aprenderás a evitar que n8n use URLs con "localhost" y a configurarlo para que funcione correctamente con tu dominio.

¿Qué es n8n?

n8n es una potente herramienta de automatización de flujos de trabajo que permite conectar aplicaciones, API y servicios sin necesidad de programación avanzada. Su flexibilidad y su modelo de autoalojamiento lo hacen una excelente opción para quienes buscan independencia de plataformas de terceros.

Paso 1: Instalación de Docker en Plesk

Antes de instalar n8n, asegúrate de que Docker está habilitado en tu servidor con Plesk. Para instalar Docker en Plesk:
  1. Inicia sesión en Plesk Obsidian.
  2. Dirígete a Extensiones y busca Docker.
  3. Instala la extensión de Docker si aún no lo has hecho.
  4. Una vez instalado, verás la opción Docker en el panel de control.

Paso 2: Buscar la Imagen de n8n en Docker

  1. Ve a Docker en el panel de Plesk.
  2. En la barra de búsqueda, escribe n8n.
  3. Selecciona la imagen oficial n8nio/n8n.
  4. Haz clic en Ejecutar para comenzar la configuración del contenedor.

Paso 3: Configurar n8n para Usar el Subdominio Correctamente

Por defecto, n8n podría generar URLs con
localhost
. Para solucionar esto, debemos configurar las variables de entorno antes de configurar el subdominio.

N8N_BASIC_AUTH_ACTIVE=true
N8N_BASIC_AUTH_USER=admin
N8N_BASIC_AUTH_PASSWORD=TuContraseñaSegura
N8N_RUNNERS_ENABLED=true
N8N_ENFORCE_SETTINGS_FILE=true
N8N_HOST=n8n.tudominio.com
N8N_PORT=5678
N8N_PROTOCOL=https
WEBHOOK_URL=https://n8n.tudominio.com/
VUE_APP_URL_BASE_API=https://n8n.tudominio.com/
    

Paso 4: Crear un Subdominio en Plesk

  1. Ve a Sitios Web y Dominios en Plesk.
  2. Crea un subdominio para n8n con el mismo nombre definido en las variables de entorno (n8n.tudominio.com).

Paso 5: Configurar el Proxy en Plesk

  1. Ve a Reglas de Proxy Docker dentro de la configuración del subdominio.
  2. Agrega una nueva regla que redirija al contenedor de n8n en el puerto 5678.
Opcionalmente, también puedes configurar manualmente el proxy inverso en Nginx:

location / {
    proxy_pass http://localhost:5678;
    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;
}
    
Guarda los cambios y reinicia Nginx.

Paso 6: Habilitar SSL con Let's Encrypt

  1. Ve a Sitios Web y Dominios en Plesk.
  2. Selecciona el subdominio n8n.tudominio.com.
  3. Haz clic en SSL/TLS y selecciona Let's Encrypt.
  4. Activa la opción "Incluir subdominios".
  5. Guarda y espera a que se instale el certificado.
  6. Activa la redirección de HTTP a HTTPS para mayor seguridad.

Paso 7: Reiniciar n8n y Verificar la Configuración


docker restart n8n
    
Ahora deberías poder acceder a n8n sin problemas en
https://n8n.tudominio.com
.

Conclusión

Hemos instalado y configurado n8n en Plesk con Docker, usando un subdominio y configurando HTTPS para un acceso seguro. Además, solucionamos el problema de las URLs con
localhost
configurando variables de entorno antes de crear el subdominio y agregando las reglas de proxy Docker en Plesk. Siguiendo estos pasos, tendrás un entorno de n8n totalmente funcional en tu servidor. Si necesitas automatizar flujos de trabajo, conectar aplicaciones y mejorar tu productividad, esta configuración es ideal para ti. Si tienes alguna duda o problema, ¡comenta y te ayudaremos!