Cómo instalar n8n en Plesk paso a paso: Guía técnica para ecommerce y agencias

¿Te gustaría automatizar tareas en tu ecommerce, integrar sistemas o construir workflows complejos sin ser un experto en programación? n8n es una herramienta potente de automatización low-code que puedes instalar en tu propio servidor. Si trabajas con Plesk, esta guía es para ti.

Índice de contenidos

¿Qué es n8n y por qué deberías usarlo?

n8n es un motor de automatización de procesos open source. Te permite crear workflows que conectan aplicaciones como WooCommerce, PrestaShop, WordPress, Gmail, CRMs, APIs personalizadas, bases de datos y mucho más. Esto es clave en ecommerce porque:
  • Reduce tareas manuales (como actualizar stock o enviar emails).
  • Permite integrar apps sin necesidad de programar integraciones a medida.
  • Genera eficiencia y ahorro de costes.
  • Puede alojarse en tu propio servidor, sin costes mensuales elevados.
Si eres dueño de un ecommerce, podrás automatizar procesos sin depender de desarrolladores constantemente. Si eres agencia o desarrollador, es una herramienta brutal para ofrecer servicios de integración avanzada.

Requisitos para instalar n8n en Plesk

Antes de instalar n8n, revisa estos requisitos:
  • Servidor con Plesk Obsidian o superior.
  • Docker habilitado en Plesk (para instalación vía Docker).
  • O soporte Node.js en Plesk (para instalación manual).
  • Puerto libre (por ejemplo el 5678, por defecto).
  • Certificado SSL (opcional, pero recomendado).
  • Acceso SSH al servidor.
Recomendación: Para ecommerce, siempre instala n8n en un subdominio (ej.: n8n.tutienda.com) y con HTTPS.

Métodos para instalar n8n en Plesk

Existen dos formas de instalar n8n en Plesk:
  1. Con Docker: la forma más sencilla y limpia.
  2. Manual con Node.js: para mayor control o si no puedes usar Docker.
Veamos ambos métodos.

Instalación de n8n en Plesk usando Docker

Si tu servidor tiene Docker activo en Plesk, instalar n8n es muy rápido. Aquí tienes el paso a paso:

1. Accede a Plesk y abre Docker

Entra en tu panel Plesk > Docker. Busca la imagen oficial de n8n:
n8nio/n8n:latest
O usa un tag concreto si quieres una versión específica.

2. Configura el contenedor

En Plesk, haz clic en “Ejecutar”. Configura:
  • Puertos: expón el puerto interno 5678 al puerto externo que prefieras (p. ej. 5678).
  • Variables de entorno:
VariableEjemplo valorDescripción
WEBHOOK_URLhttps://n8n.tutienda.com/URL pública donde se accede a n8n.
GENERIC_TIMEZONEEurope/MadridZona horaria.
N8N_BASIC_AUTH_ACTIVEtrueActiva autenticación básica.
N8N_BASIC_AUTH_USERadminUsuario de acceso.
N8N_BASIC_AUTH_PASSWORDcontraseña-seguraContraseña de acceso.

3. Montar volumen persistente

Si quieres que n8n guarde tus workflows aunque reinicies el contenedor, monta un volumen en Docker:
/home/n8n/.n8n
En Plesk puedes asignarlo a una carpeta local de tu servidor.

4. Inicia el contenedor

Haz clic en “Ejecutar” y Plesk descargará e iniciará la imagen. Accede a tu subdominio o IP:
https://n8n.tutienda.com
¡Ya tienes n8n corriendo!

Ejemplo de comando docker run

Si prefieres hacerlo por SSH, sería así:
docker run -it --rm \
  --name n8n \
  -p 5678:5678 \
  -v ~/.n8n:/home/node/.n8n \
  -e WEBHOOK_URL="https://n8n.tutienda.com/" \
  -e N8N_BASIC_AUTH_ACTIVE=true \
  -e N8N_BASIC_AUTH_USER=admin \
  -e N8N_BASIC_AUTH_PASSWORD="contraseña-segura" \
  n8nio/n8n
Explicación línea por línea:
  • docker run -it --rm: Ejecuta el contenedor en modo interactivo, y lo elimina al parar.
  • --name n8n: Asigna el nombre n8n al contenedor.
  • -p 5678:5678: Expone el puerto 5678.
  • -v ~/.n8n:/home/node/.n8n: Monta volumen persistente para workflows.
  • -e WEBHOOK_URL=...: Define URL pública.
  • -e N8N_BASIC_AUTH_ACTIVE=true: Activa login.
  • -e N8N_BASIC_AUTH_USER: Usuario.
  • -e N8N_BASIC_AUTH_PASSWORD: Contraseña.
  • n8nio/n8n: Imagen que se ejecuta.

Instalación de n8n en Plesk usando Node.js

Si no puedes usar Docker, puedes instalar n8n como app Node.js. Aquí el paso a paso:

1. Instalar Node.js

En Plesk:
  • Ve a Plesk → Tools & Settings → Updates.
  • Instala el paquete Node.js.
También puedes instalarlo vía SSH con:
curl -fsSL https://deb.nodesource.com/setup_18.x | bash -\napt install -y nodejs

2. Crear dominio o subdominio

Crea un subdominio (ej.: n8n.tutienda.com) en Plesk. Activa SSL Let’s Encrypt para seguridad.

3. Subir proyecto Node.js

Conéctate por SSH y ejecuta:
npm install n8n -g
Esto instala n8n globalmente.

4. Lanzar n8n

Lanza n8n con autenticación:
n8n start \
  --tunnel \
  --basic-auth \
  --basic-auth-user admin \
  --basic-auth-password "contraseña-segura"
Explicación:
  • n8n start: inicia n8n.
  • --tunnel: crea URL pública temporal (útil para pruebas).
  • --basic-auth: activa login.
  • --basic-auth-user: usuario.
  • --basic-auth-password: contraseña.

Seguridad y buenas prácticas

  • Usa HTTPS siempre.
  • Protege el acceso con autenticación básica o tokens.
  • Monta volúmenes persistentes para no perder workflows.
  • Haz backups frecuentes.
  • Prueba primero en entorno staging.
Para ecommerce, es vital evitar exponer endpoints críticos al público.

Beneficios para ecommerce y SEO técnico

¿Por qué interesa a un ecommerce tener n8n en su servidor?
  • Automatizas tareas SEO (p. ej. generación de sitemaps, auditorías de URLs).
  • Sincronizas stock, precios y feeds en tiempo real.
  • Ahorras costes de herramientas SaaS.
  • Mejoras velocidad de respuesta (al no depender de servicios externos).
  • Puedes construir integraciones a medida (PrestaShop, WooCommerce, Google Sheets, etc.).
Ejemplo práctico para SEO técnico:
  • Crear un workflow que revise URLs y detecte errores 404 en WooCommerce.
  • Enviar un informe diario al equipo técnico vía Slack.

Ejemplo avanzado: Integración de n8n con bases de datos MySQL en ecommerce

Uno de los usos más potentes de n8n para ecommerce es integrarlo directamente con tus bases de datos MySQL, por ejemplo las de PrestaShop, WooCommerce o WordPress. Imagina este caso práctico:
  • Quieres un informe diario de productos con stock cero.
  • Que se genere automáticamente y se envíe por correo.

Ejemplo de query SQL en PrestaShop

SELECT p.id_product, pl.name, sa.quantity
FROM ps_product p
JOIN ps_product_lang pl ON p.id_product = pl.id_product
JOIN ps_stock_available sa ON p.id_product = sa.id_product
WHERE sa.quantity <= 0
AND pl.id_lang = 1;
Explicación:
  • ps_product: tabla de productos.
  • ps_product_lang: nombres de producto según idioma.
  • ps_stock_available: stock actual.
  • sa.quantity <= 0: filtra solo productos sin stock.
Con n8n, podrías:
  1. Configurar un nodo MySQL para conectar a tu base de datos.
  2. Lanzar la consulta SQL de forma automática cada día.
  3. Enviar los datos a tu correo o a Google Sheets.
Esto elimina tener que entrar cada día a la base de datos a consultar datos manualmente.

Ejemplo avanzado: Workflow completo con n8n para ecommerce

Veamos un ejemplo completo que puedas replicar. Supongamos que tienes WooCommerce y quieres:
  • Detectar pedidos con importe superior a 500€.
  • Insertar datos del pedido en una base MySQL externa.
  • Enviar un aviso por Slack.

Pasos en n8n

  1. Webhook Node: Recibe datos desde WooCommerce al crear pedido.
  2. IF Node: Comprueba si el importe es mayor de 500.
  3. MySQL Node: Inserta datos en tabla externa.
  4. Slack Node: Manda mensaje al canal de avisos.
Ejemplo de inserción en MySQL:
INSERT INTO pedidos_high_value (order_id, customer_name, total)
VALUES ({{ $json["id"] }}, '{{ $json["billing"]["first_name"] }}', {{ $json["total"] }});
Explicación:
  • {{ $json["id"] }}: ID del pedido recibido vía webhook.
  • {{ $json["billing"]["first_name"] }}: nombre del cliente.
  • {{ $json["total"] }}: importe total del pedido.
Esto te permite detectar clientes VIP y lanzar procesos automáticos, como notificar al equipo comercial o crear campañas de marketing específicas.

Script para automatizar backups de n8n en Plesk

Es fundamental tener copias de seguridad de tus workflows de n8n. Si lo has instalado vía Docker, los datos suelen estar en:
/var/lib/docker/volumes/n8n_data/_data
Podrías crear un script bash para hacer backups cada noche:
#!/bin/bash
# Script de backup n8n

# Fecha actual
FECHA=$(date +%Y-%m-%d)

# Carpeta de backup
BACKUP_DIR="/root/backups/n8n"

# Crear carpeta si no existe
mkdir -p $BACKUP_DIR

# Hacer backup
tar czf $BACKUP_DIR/n8n-backup-$FECHA.tar.gz /var/lib/docker/volumes/n8n_data/_data

# Opcional: eliminar backups antiguos de más de 7 días
find $BACKUP_DIR -type f -mtime +7 -exec rm {} \;
Explicación línea a línea:
  • Define la fecha para el nombre del archivo.
  • Crea la carpeta de backup si no existe.
  • Genera un tar.gz del volumen de datos.
  • Elimina backups antiguos de más de 7 días.
Guarda este script como /root/scripts/backup_n8n.sh y programa su ejecución diaria con un cronjob:
0 2 * * * /root/scripts/backup_n8n.sh
¡Así tendrás siempre tu n8n protegido!

Consideraciones SEO avanzadas con n8n

Para ecommerce, n8n puede convertirse en una herramienta SEO técnica muy potente. Ejemplos avanzados:
  • Scrapear las URLs de tu ecommerce y detectar:
    • Páginas sin título (<title> vacío).
    • URLs con errores 404.
    • Páginas con tiempos de carga altos.
  • Generar automáticamente sitemaps XML personalizados.
  • Mandar informes SEO diarios a tu equipo vía Slack o email.
Ejemplo sencillo de scraping de títulos:
[
  {
    "url": "https://tutienda.com/producto-1",
    "title": ""
  },
  {
    "url": "https://tutienda.com/producto-2",
    "title": "Camiseta Roja"
  }
]
Con n8n podrías:
  • Detectar automáticamente las URLs sin título.
  • Generar un Excel con los errores.
  • Ahorrar horas de auditoría SEO manual.
Esto es ideal para grandes catálogos de tiendas online, donde auditar 10.000 URLs manualmente es imposible.

Buenas prácticas avanzadas para n8n en ecommerce

  • Usa siempre autenticación básica o JWT en producción.
  • No dejes workflows expuestos a Internet sin protección.
  • Divide workflows grandes en sub-flujos para mayor mantenimiento.
  • Guarda tus workflows exportados en Git o un backup seguro.
  • Controla límites de recursos (CPU/RAM) si ejecutas n8n en Docker.
  • Para ecommerce:
    • No ejecutes integraciones directas sobre bases de datos en hora punta si no es necesario.
    • Siempre prueba los workflows en staging antes de producción.

Conclusión

n8n es una herramienta impresionante que te permitirá integrar tu ecommerce con múltiples sistemas, ahorrar tiempo y optimizar procesos. Si gestionas servidores Plesk, instalarlo es perfectamente posible tanto con Docker como sin él.
¿Quieres integrar n8n con tus tiendas, bases de datos y sistemas de ecommerce sin complicaciones? ¡Contáctanos y lo configuramos por ti, optimizado y seguro!
Ir al contenido