Presentación de n8n
n8n es una herramienta de automatización de workflows en modo visual. Conectas nodos (webhooks, peticiones HTTP, bases de datos, correo, servicios SaaS) sobre un lienzo, e insertas código JavaScript o Python cuando un nodo no basta. Al autoalojarlo, tus datos y tus credenciales se quedan en tu propia máquina y no en manos de un tercero.
En la entrega, el script de la receta instala Docker si no está presente y después arranca dos contenedores con Docker Compose desde /opt/n8n: n8n (imagen docker.n8n.io/n8nio/n8n:latest) y Caddy 2. n8n solo escucha en 127.0.0.1:5678. Caddy, en modo de red host, publica el servicio en HTTPS por el puerto 443 y lo redirige a n8n.
El certificado es autofirmado (directiva tls internal de Caddy) y está vinculado a la dirección IP pública del servidor. Por eso el navegador mostrará una advertencia en la primera visita, algo normal mientras no haya un nombre de dominio asociado. Los datos de n8n se guardan en un volumen de Docker (n8n_data) y la zona horaria está configurada en Europe/Paris.
Lo que puede hacer con n8n
Editor visual de workflows
Montas disparadores, condiciones y acciones sobre un lienzo. Cada ejecución se puede inspeccionar nodo a nodo, lo que facilita mucho la depuración.
Webhooks y llamadas HTTP
Un workflow puede arrancar con una petición entrante o consultar cualquier API REST. El servidor ya está configurado para construir sus URL de webhook en HTTPS.
Código JavaScript o Python
Un nodo Code permite transformar datos o escribir lógica que los nodos estándar no cubren, sin salir del workflow.
Datos en tu propio servidor
Los workflows, las credenciales y el historial de ejecuciones se quedan en el volumen de Docker
n8n_datade tu VPS, alojado en París o Fráncfort.HTTPS con Caddy desde el inicio
n8n sigue enlazado a
127.0.0.1y solo Caddy queda expuesto en el puerto 443. Pasar a un certificado reconocido se reduce a modificar un archivo.Arranque automático
Los dos contenedores se declaran con
restart: always. Tras reiniciar el servidor, n8n y Caddy vuelven a arrancar sin intervención.
Empezar con n8n
Del pedido a la puesta en producción en pocos minutos.
- 1
Pide el VPS con n8n
Elige un VPS Linux en París o Fráncfort y marca n8n en la pestaña «Applications» del formulario de pedido. Están disponibles Debian 12, Debian 13, Ubuntu 20.04, 22.04 y 24.04.
- 2
Espera la entrega y comprueba
El script se ejecuta en el primer arranque: instala Docker y lanza los contenedores, lo que tarda unos minutos. Conéctate por SSH con los accesos de entrega y comprueba que n8n y Caddy están en marcha.
Bashcd /opt/n8n && docker compose ps - 3
Crea la cuenta de propietario
Abre https://SERVER_IP en el navegador y acepta la advertencia del certificado autofirmado. n8n te pedirá crear la cuenta de propietario, que es la que administra la instancia.
- 4
Pasa a un dominio con HTTPS
Crea un registro DNS A de YOUR_DOMAIN hacia SERVER_IP y sustituye el Caddyfile y las variables de n8n. Caddy obtendrá entonces un certificado reconocido de forma automática, siempre que los puertos 80 y 443 sean accesibles.
Bashcd /opt/n8n cat > Caddyfile <<'EOF' YOUR_DOMAIN { reverse_proxy 127.0.0.1:5678 } EOF sed -i 's|N8N_HOST=.*|N8N_HOST=YOUR_DOMAIN|; s|WEBHOOK_URL=.*|WEBHOOK_URL=https://YOUR_DOMAIN/|' docker-compose.yml docker compose up -d docker compose restart caddy
Casos de uso de n8n
Sincronizar tus herramientas de negocio
Un nuevo lead en un formulario crea una ficha en tu CRM, envía un correo de confirmación y avisa al equipo por mensajería. Todo cabe en un solo workflow.
Procesar webhooks entrantes
Pagos, repositorios Git o alertas de monitorización pueden activar workflows que filtran, enriquecen y redistribuyen los eventos. Esto requiere un nombre de dominio con certificado válido, porque la mayoría de los servicios rechazan un certificado autofirmado.
Automatizar tareas programadas
Exportaciones de bases de datos, informes semanales, limpieza de datos: un disparador cron sustituye a los scripts repartidos por varias máquinas.
Conectar modelos de IA
n8n puede llamar a API de modelos de lenguaje desde un workflow, por ejemplo para clasificar tickets o resumir correos antes de enviarlos a la persona adecuada.
Preguntas frecuentes sobre n8n
Caddy genera el certificado (tls internal) para la dirección IP del servidor: ninguna autoridad pública puede emitir uno para una IP en esta configuración. El cifrado está activo, pero el certificado no es reconocido. Asocia un nombre de dominio y Caddy obtendrá un certificado válido.
Más sobre n8n
Archivos instalados
Todo está en /opt/n8n: el script install-n8n.sh, el archivo docker-compose.yml y el Caddyfile. Se crean tres volúmenes de Docker: n8n_data (datos de n8n, incluida la clave de cifrado de las credenciales), caddy_data y caddy_config.
Las variables N8N_HOST y WEBHOOK_URL contienen la dirección IP pública detectada durante la instalación. Si cambias de dirección o de dominio, actualízalas; de lo contrario, las URL de webhook que muestra la interfaz serán incorrectas.
Cortafuegos
n8n no está expuesto directamente, pero Caddy abre el puerto 443. Limita el resto: SSH, el 80 (necesario para emitir el certificado de Let's Encrypt) y el 443 son suficientes.
Bashufw allow 22/tcp ufw allow 80/tcp ufw allow 443/tcp ufw enable
Permite SSH antes de activar el cortafuegos; si no, perderás tu sesión.
Copias de seguridad
Lo esencial está en el volumen de datos de n8n. Docker Compose antepone a su nombre el del directorio del proyecto: compruébalo con docker volume ls (normalmente se llama n8n_n8n_data) y después archívalo.
Bashdocker run --rm -v n8n_n8n_data:/data -v /root:/backup alpine \ tar czf /backup/n8n-data-$(date +%F).tar.gz -C /data .
Copia el archivo fuera del servidor. Sin la clave de cifrado que contiene ese volumen, las credenciales guardadas en n8n no se pueden recuperar.
Actualizaciones
El archivo Compose usa la etiqueta latest. Para actualizar:
Bashcd /opt/n8n docker compose pull docker compose up -d
Haz antes una copia de seguridad. En una instancia de producción puedes sustituir latest por un número de versión concreto en docker-compose.yml y subir de versión cuando lo decidas, tras leer las notas de la versión.
