n8n Dockerizado para VPS Linux
Este proyecto está basado en el repositorio oficial de n8n, una plataforma de automatización de flujos de trabajo que ofrece a los equipos técnicos la flexibilidad del código con la velocidad de las soluciones sin código.
Este entorno incluye:
- n8n.io – Workflow Automation
- Variables de entorno configurables
- Documentación clara para exponer puertos y asegurar el servicio
Ideal para los que deseen tener n8n funcionando en un VPS minutos, sin configuraciones complicadas ni instalaciones manuales.
Requisitos
Asegúrate de tener instalados:
docker -v
docker compose version
Si no los tienes, puedes instalarlos con:
También se recomienda agregar tu usuario al grupo docker
para evitar usar sudo
:
Instalación del proyecto
1. Clona este repositorio
git clone https://github.com/devalexcode/docker-n8n.git
Ingresa a la carpeta del repositorio:
cd docker-n8n
2. Crea el archivo .env
cp .env.example .env
Configuración del archivo .env
Antes de levantar los servicios, asegúrate de crear y configurar tu archivo .env
:
nano .env
Edita el archivo .env
con tus propios valores:
# N8N
# Puerto en el que n8n escucha las peticiones entrantes
N8N_PORT=5678
# Zona horaria utilizada por n8n para timestamps y programación de workflows
N8N_TIME_ZONE=America/Mexico_City
# URL base del servidor n8n (incluye protocolo, host y opcionalmente puerto; puedes reemplazarla por la IP de tu servidor o la URL de tu dominio o subdominio de producción)
N8N_URL_SERVER=http://localhost/
# Protocolo que usa n8n (http o https)
N8N_PROTOCOL=http
# Define si las cookies deben marcarse como "secure" (solo válidas en HTTPS)
N8N_SECURE_COOKIE=false
3. Levanta los servicios
docker compose up -d
- Construye las imágenes necesarias
- Levanta los contenedores definidos en
docker-compose.yml
- Todo en segundo plano (
-d
)
Verifica que el contenedor esté en ejecución
Después de levantar el entorno con docker compose up -d
, puedes verificar que n8n se esté ejecutando correctamente con:
docker ps
Deberías ver una salida similar a esta:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
e3b6d8e6c317 n8nio/n8n:latest "tini -- /docker-ent…" 28 seconds ago Up 26 seconds 0.0.0.0:5678->5678/tcp, [::]:5678->5678/tcp n8n
Acceso a la aplicación
Accede desde el navegador (o usa curl
) en:
http://IP_DEL_SERVIDOR:5678/
- Reemplaza
5678
con el puerto configurado si usaste otro. - Si estableciste una url diferente en el archivo
.env
ingresa a esa url. de igual manera, si usashttp://
ohttps://
y configuraste un proxy, un dominio o subdominio. - Si estás en localhost, puedes usar
http://localhost:5678
- Completa el formulario para comenzar a usar la aplicación.
Exponer el puerto de n8n (opcional)
Si estás en un servidor Linux con ufw
(firewall) activado y no estas usando un proxy por el puerto 80
0 443
, puedes exponer únicamente el puerto necesario para acceder a la n8n desde el exterior.
Permitir solo el puerto definido en .env
(por ejemplo, 5678)
sudo ufw allow 5678
N8N_PORT
en tu .env
coincida con el puerto que estás abriendo.
Verifica que el puerto está permitido
sudo ufw status
Deberías ver una regla como:
5678 ALLOW Anywhere