Requisitos previos
Para instalar n8n en producción necesitas: un servidor Ubuntu 22.04 LTS o superior, al menos 1 GB de RAM (recomendado 2 GB), un dominio propio apuntando al servidor, y acceso root o sudo.
Paso 1: Actualizar el sistema
sudo apt update && sudo apt upgrade -y
sudo apt install -y curl wget git
Paso 2: Instalar Docker
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo usermod -aG docker $USER
newgrp docker
Paso 3: Instalar Docker Compose
sudo apt install -y docker-compose-plugin
docker compose version
Paso 4: Instalar Nginx y Certbot
sudo apt install -y nginx certbot python3-certbot-nginx
sudo systemctl enable nginx
Paso 5: Obtener certificado SSL
sudo certbot --nginx -d tu-dominio.com
Paso 6: Crear docker-compose.yml
mkdir ~/n8n && cd ~/n8n
cat > docker-compose.yml << 'EOF'
version: '3.8'
services:
n8n:
image: n8nio/n8n
restart: always
ports:
- "5678:5678"
environment:
- N8N_HOST=tu-dominio.com
- N8N_PORT=5678
- N8N_PROTOCOL=https
- WEBHOOK_URL=https://tu-dominio.com/
- GENERIC_TIMEZONE=America/Mexico_City
volumes:
- ~/.n8n:/home/node/.n8n
EOF
Paso 7: Configurar Nginx como proxy inverso
sudo nano /etc/nginx/sites-available/n8n
Agrega esta configuración:
server {
listen 443 ssl;
server_name tu-dominio.com;
ssl_certificate /etc/letsencrypt/live/tu-dominio.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/tu-dominio.com/privkey.pem;
location / {
proxy_pass http://localhost:5678;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
Paso 8: Iniciar n8n
sudo ln -s /etc/nginx/sites-available/n8n /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx
docker compose up -d
Accede a https://tu-dominio.com y crea tu cuenta de administrador. ¡Tu instancia de n8n está lista para producción!