Cómo Autoalojar n8n en un VPS (Guía Completa)
En el mundo actual, la automatización es clave para mejorar la productividad, y n8n es una excelente herramienta de automatización de flujos de trabajo de código abierto que te permite conectar diferentes aplicaciones y servicios sin necesidad de escribir código. Autoalojar n8n en un Servidor Privado Virtual (VPS) es una buena opción para los desarrolladores que buscan control y personalización de sus flujos de datos. Esta guía cubre los pasos para instalar y configurar n8n usando Docker en un VPS.
Requisitos Previos
- Elige un Proveedor de VPS: Selecciona un proveedor de VPS que se ajuste a tus necesidades. Aquí hay una comparación de algunas opciones populares:
| Proveedor | Precio (por mes) | RAM | Almacenamiento |
|---|---|---|---|
| Contabo VPS | 5.99 EUR | 4 GB | 200 GB SSD |
| Hetzner Cloud | 4.15 EUR | 2 GB | 20 GB SSD |
| DigitalOcean | 6 USD | 1 GB | 25 GB SSD |
| Vultr | 6 USD | 1 GB | 25 GB SSD |
| Linode (Akamai) | 5 USD | 2 GB | 50 GB SSD |
-
Instala Docker: Asegúrate de que Docker y Docker Compose estén instalados en tu VPS. Si no están instalados, puedes seguir la guía de instalación oficial de Docker.
-
Asegura tu Servidor: Se recomienda una configuración básica del firewall con
ufw(Uncomplicated Firewall). Esto debería incluir permitir SSH y los puertos necesarios para n8n.
Paso 1: Configura Docker
Después de iniciar sesión en tu VPS a través de SSH, verifica que Docker esté instalado ejecutando:
docker --version
Si Docker no está instalado, puedes instalarlo usando:
sudo apt update
sudo apt install docker.io
Habilita e inicia Docker:
sudo systemctl enable docker
sudo systemctl start docker
Paso 2: Crea el Directorio para n8n
Crea un directorio para n8n y navega a él:
mkdir ~/n8n
cd ~/n8n
Paso 3: Crea el Archivo Docker Compose
Crea un nuevo archivo docker-compose.yml con tu editor de texto preferido:
nano docker-compose.yml
Agrega la siguiente configuración:
version: '3'
services:
n8n:
image: n8nio/n8n
environment:
- N8N_API_BASIC_AUTH_ACTIVE=true
- N8N_API_BASIC_AUTH_USER=user
- N8N_API_BASIC_AUTH_PASSWORD=your_password
- N8N_HOST=your_domain_or_ip
- N8N_PORT=5678
- N8N_PROTOCOL=https
- N8N_SSL_CERT=your_ssl_cert_path
- N8N_SSL_KEY=your_ssl_key_path
volumes:
- ~/.n8n:/home/node/.n8n
ports:
- "5678:5678"
restart: always
Reemplaza your_domain_or_ip, your_ssl_cert_path y your_ssl_key_path con tu información. Puedes usar Let’s Encrypt para SSL (más sobre esto más adelante).
Paso 4: Ejecuta n8n
Inicia n8n usando Docker Compose:
docker-compose up -d
Verifica que n8n esté corriendo al comprobar si el contenedor está activo:
docker ps
Paso 5: Accede a n8n
Puedes acceder a tu instancia de n8n usando la IP de tu VPS o el nombre de dominio:
http://your_domain_or_ip:5678
Inicia sesión con las credenciales que especificaste en el docker-compose.yml.
Paso 6: Configura SSL (Opcional pero Recomendado)
Para mejorar la seguridad, es buena práctica configurar SSL. Puedes usar Let’s Encrypt:
-
Instala Certbot:
sudo apt install certbot -
Obtén Certificados:
sudo certbot certonly --standalone -d your_domain.com -
Actualiza el archivo
docker-compose.ymlpara incluir las rutas correctas de los certificados SSL como se mostró en el Paso 3.
Después de actualizar, reinicia los servicios de n8n:
docker-compose down
docker-compose up -d
Preguntas Frecuentes
1. ¿Cuáles son los beneficios de autoalojar n8n en lugar de usar la versión en la nube?
Autoalojar n8n ofrece numerosos beneficios, incluyendo control total de datos, características personalizables según necesidades específicas, y posibilidades de automatización más flexibles al conectar con otros servicios autoalojados. Puedes asegurarte de que los datos sensibles permanezcan privados y cumplir con las regulaciones de protección de datos, ya que dictas cómo y dónde se procesan los datos. En última instancia, el autoalojamiento también permite experimentar con más integraciones sin los posibles límites de uso que normalmente se imponen en las versiones en la nube.
2. ¿Puedo ejecutar n8n en un VPS de bajo rendimiento?
Sí, n8n puede ejecutarse en un VPS de bajo rendimiento, pero el rendimiento puede variar según la complejidad de los flujos de trabajo que planeas ejecutar. Para automatizaciones simples, opciones como Hetzner Cloud o DigitalOcean con al menos 1-2 GB de RAM deberían ser suficientes. Sin embargo, para flujos de trabajo más pesados que requieren almacenar conjuntos de datos más grandes o ejecutar muchas ejecuciones simultáneas, puede que necesites una configuración de VPS más robusta, posiblemente con más RAM y CPU.
3. ¿Cómo hacer una copia de seguridad de las configuraciones y datos de n8n?
Hacer copias de seguridad de las configuraciones y datos de n8n es vital para asegurar la continuidad de tus flujos de trabajo. Dado que n8n almacena sus datos en el volumen que montaste (como se especifica en el docker-compose.yml), deberías hacer copias de seguridad regularmente del directorio ~/.n8n. Esto se puede lograr copiándolo a otra ubicación, programado a través de trabajos cron, o usando servicios de copia de seguridad. Automatizar las copias de seguridad de este directorio en almacenamiento en la nube u otro servidor físico ayuda a minimizar la pérdida de datos y a mantener la resiliencia del sistema.
Siguiendo esta guía completa, estarás bien preparado para autoalojar n8n en tu VPS, aprovechando su potencial para automatizar flujos de trabajo de manera efectiva. Para comparaciones de los mejores proveedores de VPS, visita nuestra comparación completa de VPS. ¡Feliz autoalojamiento!