Project Management con Spec Driven DevelopmentBeta

0%
Bloque Técnico-OperativoProfundización

Módulo 10.1

Hosting n8n en la Nube

3h

Deploy de n8n en GCP, Cloudflare Tunnel, Oracle ARM y Railway por menos de $5/mes. Scripts de backup y configuración de dominios.

Recursos descargables

Docker Compose — n8n en la Nube

Variante del compose para servidores cloud (GCP, Oracle ARM, cualquier VPS) con WEBHOOK_URL e instrucciones de despliegue integradas

YAML

Configuración Cloudflare Tunnel

Expone n8n con https y dominio propio sin abrir puertos, con los comandos de configuración paso a paso en el mismo archivo

YAML

Dockerfile para Railway

Imagen mínima de n8n para desplegar en Railway (PaaS sin administración de VM), con pasos de despliegue comentados

Texto

Configuración de Railway

railway.json con builder Dockerfile y política de reinicio para el despliegue de n8n

JSON

Backup Local de n8n

Script completo: exporta workflows y credenciales, comprime los datos, verifica el archivo y aplica retención — incluye instrucciones de cron y restauración

Shell Script

Backup de n8n a Google Drive

Versión del backup con subida automática a Google Drive vía rclone, retención remota y validación del remote configurado

Shell Script
En este módulo
01
Introducción n8n profesional, 24/7 y con HTTPS, por menos que un café a la semana

En el módulo 10 instalaste n8n en tu computadora. Funciona. Pero tu laptop tiene que estar prendida 24/7: los webhooks no funcionan en localhost, los triggers por horario se detienen al cerrar la tapa, y tu equipo no puede acceder a workflows que viven en tu máquina.

La solución es la nube — y "la nube" suena a gasto de ingeniería y tarjeta corporativa. Este módulo te muestra que puedes tener n8n en un servidor profesional, accesible desde internet y con respaldo automático, por menos de lo que cuesta un café a la semana.

Verás 4 rutas: gratis total (Oracle), Free Tier de GCP, y alternativas serverless como Railway que ni requieren saber de servidores. Y para rematar: Cloudflare Tunnel, que te da HTTPS y dominio aunque el servidor esté en la cocina de tu casa.

Vamos.

02
Desarrollo teórico-práctico Cuándo necesitas la nube y el mapa de proveedores de $0 a $20/mes

2.1. ¿Por Qué Hostear en la Nube? (La Decisión para el PM)

¿Qué ganas moviendo n8n de tu laptop a un servidor?

Situación Local (tu laptop) En la nube
Webhooks (formularios, APIs externas) ❌ No funcionan en localhost ✅ URL pública accesible
Ejecución 24/7 ❌ Se apaga al cerrar la tapa ✅ Corre sin interrupción
Tu equipo puede ver los workflows ❌ Solo tú ✅ Todos los que autorices
Respaldos automáticos ❌ Los haces manual ✅ Configurables
Escalar a más herramientas ❌ Limitado por RAM de tu compu ✅ Más RAM, más discos
Costo ✅ $0 (ya tienes la laptop) 💰 $0-$5/mes

¿Cuándo NO necesitas la nube?

  • Solo usas n8n para automatizaciones personales sin webhooks (triggers manuales o por horario).
  • Tu laptop está encendida 24/7 y nunca la apagas.
  • No necesitas compartir los workflows con nadie.

¿Cuándo SÍ necesitas la nube?

  • Tu workflow se activa por formularios web, emails, o cualquier evento externo.
  • Quieres que las automatizaciones corran aunque estés durmiendo.
  • Tu equipo de ventas, marketing o operaciones necesita ver el estado de las automatizaciones.

2.2. Mapa de Opciones — De Gratis a Low-Cost

Proveedor Costo Mensual RAM Disco Ideal Para Limitación
Oracle Cloud (Always Free) $0 1 GB 100 GB PMs que quieren 100% gratis 1 GB RAM es justo para n8n + 1-2 workflows
GCP e2-micro (Free Tier) $0 (primeros 12 meses) 1 GB 30 GB PMs que usan GCP Solo gratis 1 año, luego ~$7/mes
GCP e2-small (recomendado) ~$7/mes 2 GB 30 GB El punto dulce calidad/precio Pagas pero es confiable
AWS t2.micro (Free Tier) $0 (12 meses) 1 GB 30 GB Si ya usas AWS Solo gratis 1 año, rendimiento variable
Azure B1s (Free Tier) $0 (12 meses) 1 GB 64 GB Si ya usas Azure Solo gratis 1 año
Railway $5/mes 1 GB 1 GB SSD PMs que no quieren saber de servidores No tienes acceso SSH, solo docker
Fly.io ~$2-3/mes 256 MB 3 GB Workflows muy ligeros RAM muy limitada
Coolify (auto-hosted) $0 + VPS Variable Variable PMs con varios proyectos Necesitas un VPS aparte
Hetzner CX22 ~$4.5/mes 2 GB 40 GB La mejor relación calidad/precio global No es Free Tier, pero es el más barato confiable
n8n Cloud (oficial) $20/mes 5 GB 20 GB PMs que no quieren mantener nada Caro, pero sin mantenimiento
Recomendación del curso

PM individual → Oracle Cloud ($0/mes) · startup/equipo → Hetzner ($4.5/mes) · ya usas GCP → e2-small ($7/mes) · no quieres mantener nada → Railway ($5/mes).

03
Paso a paso técnico (Hands-on) Elige UNA de las 4 rutas: las 4 terminan con n8n accesible desde internet
Ruta A — GCP
Perfil: ya usas Google Workspace o necesitas RAM estable.
Costo: $0 primer año (e2-micro), ~$7/mes después.
Esfuerzo: medio (consola + SSH).
Ruta B — Cloudflare Tunnel
Perfil: quieres HTTPS + dominio sobre cualquier servidor.
Costo: $0 (túnel) + ~$8/año el dominio.
Esfuerzo: medio (se suma a A o C).
Ruta C — Oracle Cloud
Perfil: quieres 100% gratis para siempre (4 ARM cores, 24 GB RAM).
Costo: $0/mes sin vencimiento.
Esfuerzo: medio · riesgo de cancelación de cuenta.
Ruta D — Railway
Perfil: no quieres saber de SSH, terminales ni YAML.
Costo: $5/mes.
Esfuerzo: mínimo · sin acceso SSH.

RUTA A: Google Cloud Platform (GCP) — $0/mes (primer año), ~$7/mes después

Perfil del PM: ya usas Google Workspace, quieres integración nativa con GCP, o necesitas 2 GB de RAM estables. Crearás una VM y te conectarás por SSH.

Paso A1: Crear cuenta de GCP

  1. Ve a cloud.google.com/free.
  2. Haz clic en "Get started for free".
  3. Ingresa con tu cuenta de Google (la misma de Gmail/Workspace).
  4. Te pedirán tarjeta de crédito para verificar identidad. No te van a cobrar si no activas servicios de pago. Google te da $300 USD en crédito gratis por 90 días + Free Tier por 12 meses.

Paso A2: Crear una VM (Compute Engine)

  1. En la consola de GCP, en el menú de hamburguesa, ve a Compute Engine → VM Instances.
  2. Haz clic en "Create Instance".
  3. Configura así:
Campo Valor Explicación
Name n8n-server El nombre del servidor
Region us-central1 o southamerica-east1 Elige la más cercana a ti
Zone Cualquiera Da igual, cualquiera funciona
Machine type e2-micro (Free Tier) o e2-small (recomendado) e2-micro es gratis pero justo; e2-small es mejor
Boot disk Ubuntu 22.04 LTS, 30 GB El sistema operativo del servidor
Firewall ✅ "Allow HTTP traffic", ✅ "Allow HTTPS traffic" Para acceder desde el navegador
  1. Haz clic en "Create".

Espera 30 segundos. Verás tu VM con IP pública (ej. 34.123.45.67). Guárdala.

Paso A3: Conectarte a la VM por SSH

GCP tiene un botón mágico: al lado de tu VM, haz clic en "SSH". Se abre una terminal en tu navegador. No necesitas instalar nada.

Paso A4: Instalar Docker en la VM

Pega estos comandos uno por uno en la terminal SSH:

# Actualizar paquetes del sistema
sudo apt update && sudo apt upgrade -y

# Instalar Docker
sudo apt install docker.io -y

# Instalar Docker Compose
sudo apt install docker-compose-v2 -y

# Habilitar Docker para que arranque solo
sudo systemctl enable --now docker

# Agregar tu usuario al grupo docker (para no tener que usar sudo)
sudo usermod -aG docker $USER

# Cerrar sesión y volver a entrar
exit

Vuelve a conectarte por SSH (botón SSH en GCP). Verifica:

docker --version
docker compose version

Paso A5: Crear el archivo docker-compose.yml

# Crear carpeta para n8n
mkdir -p ~/n8n && cd ~/n8n

# Crear carpeta para datos persistentes
mkdir data

# Crear el archivo de configuración
nano docker-compose.yml

Pega este contenido en nano (Ctrl+Shift+V para pegar, Ctrl+X para salir, Y para guardar, Enter para confirmar):

version: "3.8"

services:
  n8n:
    image: n8nio/n8n
    container_name: n8n
    restart: unless-stopped
    ports:
      - "5678:5678"
    volumes:
      - ./data:/home/node/.n8n
    environment:
      - N8N_SECURE_COOKIE=false
      - N8N_METRICS=false
      - WEBHOOK_URL=https://<IP-DE-TU-VM>:5678

Importante: Reemplaza <IP-DE-TU-VM> con la IP pública de tu VM (la que viste en el panel de GCP, ej. 34.123.45.67).

Paso A6: Iniciar n8n

docker compose up -d

Espera 10 segundos. Verifica:

docker ps

Deberías ver el contenedor n8n listado como Up.

Paso A7: Acceder a n8n desde el navegador

Abre tu navegador y ve a http://<IP-DE-TU-VM>:5678.

Advertencia

Estás usando HTTP, no HTTPS: las credenciales viajan sin cifrar. No es para producción real. La Ruta B (Cloudflare Tunnel) le pone HTTPS gratis.

Paso A8: Hacer que n8n arranque solo si la VM se reinicia

# Editar el archivo de configuración de inicio
crontab -e

Si es la primera vez, elige nano como editor. Agrega esta línea al final:

@reboot cd /home/<TU-USUARIO>/n8n && docker compose up -d

Reemplaza <TU-USUARIO> con tu nombre de usuario (en GCP suele ser tu correo sin el dominio, o tu nombre_primero).

RUTA B: Cloudflare Tunnel — HTTPS y Dominio Gratis para tu Servidor

¿Qué es Cloudflare Tunnel? Un servicio gratuito que crea un túnel cifrado desde tu servidor (donde sea que esté) hasta la red de Cloudflare:

Tu servidor
n8n escuchando en localhost:5678. Puede ser la VM de GCP, Oracle o tu laptop en casa.
Túnel cifrado
cloudflared abre la conexión de adentro hacia afuera: no expones ningún puerto.
Red Cloudflare
Pone el HTTPS, oculta tu IP y filtra ataques DDoS.
Usuario
Accede a https://n8n.tudominio.com con candado verde, desde cualquier red.
La arquitectura del túnel: tu IP nunca se expone y el SSL es gratis, esté donde esté el servidor.
Regla de oro

Cloudflare Tunnel = HTTPS + IP oculta + protección DDoS gratis. Es la opción más segura para un PM sin experiencia en seguridad.

Prerequisito: Un dominio

Necesitas un dominio. Si no tienes uno:

  • Opción gratis: usa nip.io (ej. 34.123.45.67.nip.io). No es HTTPS pero sirve para probar.
  • Opción barata: compra un dominio en Cloudflare por ~$8/año.
  • Opción empresa: usa un subdominio de tu empresa (ej. n8n.miempresa.com).

Paso B1: Instalar cloudflared

Conéctate a tu VM por SSH y ejecuta:

# Descargar cloudflared
sudo apt install curl -y
curl -L https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64 -o cloudflared

# Hacerlo ejecutable
sudo chmod +x cloudflared

# Moverlo a una ubicación del sistema
sudo mv cloudflared /usr/local/bin/

# Verificar
cloudflared version

Paso B2: Autenticar con Cloudflare

cloudflared tunnel login

Se abrirá una URL en tu navegador (o te mostrará una para que la abras). Inicia sesión en Cloudflare y selecciona el dominio que quieres usar.

Paso B3: Crear el túnel

# Crear un túnel llamado "n8n"
cloudflared tunnel create n8n

Esto genera un archivo JSON con un ID único. Guárdalo (lo necesitas luego).

Paso B4: Configurar el túnel

# Crear carpeta de configuración
mkdir -p ~/.cloudflared

# Crear archivo de configuración
nano ~/.cloudflared/config.yml

Pega:

tunnel: <TU-TUNNEL-ID>  # Reemplaza con el ID que te mostró
credentials-file: /home/<TU-USUARIO>/.cloudflared/<TU-TUNNEL-ID>.json

ingress:
  - hostname: n8n.tudominio.com  # Reemplaza con tu dominio
    service: http://localhost:5678
  - service: http_status:404

Paso B5: Configurar DNS en Cloudflare

Ve al panel de Cloudflare, sección DNS. Agrega un registro CNAME:

Tipo Nombre Contenido
CNAME n8n <TU-TUNNEL-ID>.cfargotunnel.com

Esto le dice a Cloudflare: "cuando alguien visite n8n.tudominio.com, redirígelo a nuestro túnel".

Paso B6: Iniciar el túnel como servicio

# Instalar el túnel como servicio del sistema
sudo cloudflared service install

# Iniciar el servicio
sudo systemctl start cloudflared

# Verificar que está corriendo
sudo systemctl status cloudflared

Paso B7: Probar

Abre https://n8n.tudominio.com. Deberías ver n8n con HTTPS (candado verde). Si ves advertencia de certificado, espera 2 minutos — Cloudflare tarda en propagar.

Costo

Concepto Costo
Cloudflare Tunnel $0/mes
Dominio (primer año) ~$8/año
VM (e2-micro Free Tier) $0/mes (primer año)
Total primer año ~$0.66/mes

RUTA C: Oracle Cloud Always Free — $0/mes

Perfil del PM: quieres 100% gratis, sin fecha de vencimiento. Oracle ofrece 4 ARM cores + 24 GB RAM gratis para siempre, gracias al Free Tier más generoso de la nube.

Advertencia

Oracle Cloud tiene fama de cancelar cuentas gratuitas sin previo aviso si detecta "uso comercial". Para laboratorios y proyectos personales funciona perfecto. Para un negocio crítico, mejor GCP o Hetzner.

Paso C1: Crear cuenta en Oracle Cloud

  1. Ve a oracle.com/cloud/free.
  2. Registro: necesitas tarjeta de crédito (para verificación, no cobran).
  3. Después del registro, ve a Compute → Instances → Create Instance.

Paso C2: Configurar la instancia ARM (gratis)

Campo Valor
Name n8n-server
Image Ubuntu 22.04
Shape VM.Standard.A1.Flex (4 OCPU, 24 GB RAM — es gratis)
Boot volume 100 GB (gratis si es el primero)
SSH keys Descarga la clave privada (la necesitas para conectarte)

Paso C3: Conectarte por SSH

En Windows, usa PowerShell con la clave que descargaste:

ssh -i "C:\ruta\a\tu-clave.key" ubuntu@<IP-DE-TU-VM>

O usa el botón "Cloud Shell" en la consola de Oracle (no requiere instalar nada).

Paso C4: Instalar Docker y n8n (idéntico a GCP)

# Instalar Docker
sudo apt update && sudo apt install docker.io docker-compose-v2 -y
sudo systemctl enable --now docker
sudo usermod -aG docker $USER
exit

Vuelve a conectarte. Luego:

mkdir -p ~/n8n && cd ~/n8n
mkdir data
nano docker-compose.yml

Mismo contenido que en GCP:

version: "3.8"
services:
  n8n:
    image: n8nio/n8n
    container_name: n8n
    restart: unless-stopped
    ports:
      - "5678:5678"
    volumes:
      - ./data:/home/node/.n8n
    environment:
      - N8N_SECURE_COOKIE=false
      - N8N_METRICS=false
docker compose up -d

Accede a http://<IP-DE-TU-VM>:5678.

Costo

Concepto Costo
VM $0/mes (para siempre)
Dominio (Cloudflare) ~$1/mes
Cloudflare Tunnel $0/mes
Total ~$1/mes

RUTA D: Railway — $5/mes (Sin Manejar Servidores)

Perfil del PM: No quieres saber de SSH, terminales, ni YAML de Docker. Quieres subir n8n como si fuera un archivo a Google Drive.

Railway es una plataforma serverless. Subes tu configuración y ellos manejan el servidor, las actualizaciones, los respaldos. Es más caro que las VPS pero mucho más simple.

Paso D1: Crear cuenta en Railway

  1. Ve a railway.app.
  2. Regístrate con GitHub (te crea un repositorio automático).
  3. Ve a Dashboard → New Project → Deploy from Dockerfile.

Paso D2: Crear el proyecto

Railway necesita una carpeta con un Dockerfile. Crea una en tu computadora:

mkdir n8n-railway
cd n8n-railway

Crea un archivo Dockerfile (sin extensión):

FROM n8nio/n8n
ENV N8N_SECURE_COOKIE=false
ENV N8N_METRICS=false

Crea un archivo railway.json:

{
  "build": {
    "builder": "DOCKERFILE",
    "dockerfilePath": "Dockerfile"
  },
  "deploy": {
    "restartPolicyType": "ALWAYS",
    "numReplicas": 1
  }
}

Paso D3: Subir a Railway

  1. Haz clic en "Deploy from Dockerfile" en Railway.
  2. Conecta tu repositorio de GitHub o arrastra la carpeta.
  3. Railway detecta el Dockerfile y construye n8n automáticamente.
  4. En 2-3 minutos n8n está corriendo. Railway te da una URL tipo n8n-production-1234.up.railway.app.

Paso D4: Configurar persistencia de datos

Railway usa discos efímeros. Por defecto, si reinicias, pierdes los workflows. Para persistencia:

  1. En Railway, ve a tu proyecto → Volumes.
  2. Crea un volumen llamado n8n-data.
  3. Monta el volumen en la ruta /home/node/.n8n.

Importante: Sin volumen, al reiniciar el contenedor pierdes TODO.

Costo

Concepto Costo
Railway $5/mes
Dominio (opcional) ~$1/mes
Total ~$5-6/mes
04
Respaldo automático No pierdas tus workflows: tres niveles de backup

Tu n8n en la nube tiene datos. Si el servidor se daña, pierdes workflows, credenciales, configuraciones.

Soluciones de respaldo (elige una):

4.1. Respaldo Automático por Cron (Método Recomendado)

Programa el backup diario con cron. Conéctate a tu VM y ejecuta:

# Crear script de respaldo
nano ~/backup-n8n.sh

Pega:

#!/bin/bash
# Respaldo diario de los datos de n8n
fecha=$(date +%Y-%m-%d)
tar -czf ~/n8n-backup-$fecha.tar.gz -C ~/n8n data
# Hacerlo ejecutable
chmod +x ~/backup-n8n.sh

# Programarlo para ejecutarse cada día a las 3 AM
crontab -e

Agrega:

0 3 * * * /home/<TU-USUARIO>/backup-n8n.sh

4.2. Respaldo a Google Drive (con rclone)

# Instalar rclone
sudo apt install rclone -y

# Configurar conexión a Google Drive
rclone config
# Sigue las instrucciones para conectar tu Google Drive

# Crear script de respaldo con subida a Drive
nano ~/backup-n8n-drive.sh

Pega:

#!/bin/bash
fecha=$(date +%Y-%m-%d)
tar -czf /tmp/n8n-backup-$fecha.tar.gz -C ~/n8n data
rclone copy /tmp/n8n-backup-$fecha.tar.gz gdrive:n8n-backups/
rm /tmp/n8n-backup-$fecha.tar.gz
chmod +x ~/backup-n8n-drive.sh
crontab -e
# Agrega:
0 3 * * * /home/<TU-USUARIO>/backup-n8n-drive.sh

4.3. Exportación Manual (Plan B)

En el panel de n8n: Settings → Export → Download Backup. Guarda el archivo JSON. Hazlo cada semana.

05
Seguridad mínima indispensable Contraseña, firewall y túnel: lo no negociable si n8n vive en internet

Si tu n8n va a estar en internet (no en localhost), necesitas esto:

5.1. Contraseña Maestra

n8n permite proteger la interfaz con usuario y contraseña. En tu docker-compose.yml, agrega:

environment:
  - N8N_BASIC_AUTH_ACTIVE=true
  - N8N_BASIC_AUTH_USER=admin
  - N8N_BASIC_AUTH_PASSWORD=genera-una-contraseña-segura
🔑
Tip de contraseña

NO uses admin123 ni password. Genera una frase larga única (un gestor de contraseñas la recuerda por ti). Esta credencial protege todos tus workflows y las credenciales OAuth que viven dentro.

5.2. Firewall — Bloquear Todo Excepto lo Necesario

En GCP, ve a VPC Network → Firewall Rules. Crea una regla que permita solo:

  • Puerto 5678 → tu IP (o la de tu equipo)
  • Puerto 22 (SSH) → tu IP
  • Bloquear todo lo demás

Alternativa más simple: usa UFW en tu VM:

# Instalar UFW (Uncomplicated Firewall)
sudo apt install ufw -y

# Permitir SSH y n8n solo desde tu IP
sudo ufw allow from <TU-IP> to any port 22
sudo ufw allow from <TU-IP> to any port 5678

# Activar firewall
sudo ufw enable

# Ver estado
sudo ufw status

5.3. n8n Detrás de Cloudflare Tunnel (Seguridad Automática)

Si usas Cloudflare Tunnel (Ruta B), tu IP real nunca queda expuesta. Cloudflare maneja el SSL, el firewall, y la protección DDoS. Es la opción más segura para un PM sin experiencia en seguridad.

06
Comparativa de costos anuales El precio real de cada ruta, mes 1 y mes 13
Proveedor Mes 1-12 Mes 13+ ¿Requiere tarjeta? ¿Saber Linux? ¿Mantenimiento?
Oracle Cloud ARM $0 $0 Sí (verificación) Medio Bajo
GCP e2-micro $0 ~$84/año Medio Bajo
GCP e2-small ~$84/año ~$84/año Medio Bajo
Railway $60/año $60/año Mínimo Ninguno
Fly.io ~$24/año ~$24/año Mínimo Ninguno
Hetzner CX22 ~$54/año ~$54/año Medio Bajo
n8n Cloud $240/año $240/año Ninguno Ninguno

La decisión táctica para el PM:

🧭 ¿Cuál ruta elijo?
Es mi primer servidor, quiero probar → Railway ($5/mes)
Quiero gratis para siempre → Oracle ARM ($0/mes)
Ya trabajo con GCP → e2-small ($7/mes)
Es para un cliente / producción → Hetzner ($4.5/mes)
No quiero mantener nada y tengo presupuesto → n8n Cloud ($20/mes)
Árbol de decisión: el escenario manda, no la marca del proveedor.
$0/mes
para siempre con Oracle ARM
~$0.66/mes
GCP Free Tier + Cloudflare el primer año
< $5/mes
Hetzner o Railway, sin sorpresas
$240/año
lo que te ahorras frente a n8n Cloud
07
Checklist de competencia Lo que un PM debe poder hacer al terminar
  • Al terminar este módulo, debes poder:
  • Explicar por qué n8n en localhost no es suficiente para producción.
  • Crear una VM en GCP usando la consola web.
  • Instalar Docker y Docker Compose en un servidor Ubuntu.
  • Configurar un docker-compose.yml para n8n con persistencia de datos.
  • Acceder a n8n desde el navegador usando la IP pública.
  • (Opcional) Configurar Cloudflare Tunnel para HTTPS + dominio personalizado.
  • (Opcional) Programar un respaldo automático de los datos de n8n.
  • (Opcional) Crear una cuenta en Oracle Cloud y desplegar n8n gratis.
  • (Opcional) Desplegar n8n en Railway sin usar terminal.
08
Entregable del módulo Una ruta, una captura, una línea de costo
🛠 Actividad: deja n8n accesible desde internet

Elige UNA de las 4 rutas y demuestra:

  • GCP (Ruta A): captura de la VM en GCP + n8n cargando en http://<IP>:5678.
  • Cloudflare (Ruta B): captura de https://n8n.tudominio.com con candado verde.
  • Oracle (Ruta C): captura de la instancia ARM + n8n cargando.
  • Railway (Ruta D): captura del dashboard de Railway con n8n funcionando + URL.

Entrega mínima:

  1. Captura de pantalla de n8n accesible desde internet.
  2. La salida de docker ps en el servidor (demuestra que n8n corre como contenedor).
  3. Una línea con el costo total estimado por mes de tu configuración.

El kit del módulo trae todo preconfigurado: docker-compose-cloud.yml, cloudflared-config.yml, Dockerfile.railway, railway.json y los scripts de backup.

⚠ Errores comunes
  • Error: exponer n8n por HTTP plano a internet "mientras tanto". Corrección: el "mientras tanto" se vuelve permanente: activa autenticación básica desde el día 1 y pasa a Cloudflare Tunnel pronto.
  • Error: olvidar el WEBHOOK_URL en el compose y que los webhooks generen URLs de localhost. Corrección: define WEBHOOK_URL con tu IP o dominio público antes de crear workflows con webhooks.
  • Error: montar Oracle Always Free para el flujo crítico de un cliente. Corrección: Oracle puede cancelar cuentas gratuitas sin aviso; producción de cliente va en Hetzner o GCP de pago.
  • Error: configurar el backup por cron y nunca probar la restauración. Corrección: un backup no probado no existe: restaura el tar.gz en una carpeta limpia al menos una vez.
  • Error: abrir el puerto 5678 al mundo en el firewall. Corrección: con UFW o reglas de GCP, permite 5678 y 22 solo desde tu IP; con Cloudflare Tunnel ni siquiera necesitas abrirlo.
09
Rúbrica de evaluación Cómo saber si dominaste el módulo
Criterio No Aprobado (0) Aprobado (1) Sobresaliente (2)
1. n8n accesible desde internet n8n solo corre en localhost o no corre n8n corre en un servidor pero sin HTTPS (HTTP plano) n8n corre con HTTPS (Cloudflare Tunnel o Railway) y es accesible desde cualquier red
2. Persistencia de datos No configuró volumen o la carpeta data/ no existe Configuró volumen local pero no sabe si los datos sobreviven a docker compose down Demostró que los datos persisten: creó un workflow, reinició el contenedor, y el workflow sigue ahí
3. Seguridad básica n8n está en internet sin autenticación ni firewall Configuró autenticación básica (usuario/contraseña) Configuró autenticación + firewall + respaldo automático
4. Conciencia de costos No sabe cuánto gasta por mes Sabe el costo mensual del proveedor que eligió Comparó 2+ proveedores y puede justificar su elección en términos de costo y esfuerzo

Aprobación: 3 de 4 criterios en "Aprobado" o superior.

🔑 Lo esencial del módulo
  • localhost no es producción: sin servidor 24/7 los webhooks no existen y los triggers mueren con la tapa de la laptop.
  • Hay nube profesional desde $0 (Oracle ARM) hasta $7/mes (GCP e2-small): el costo no es excusa.
  • Cloudflare Tunnel da HTTPS, dominio e IP oculta gratis, sobre cualquier proveedor.
  • Seguridad mínima: contraseña fuerte + firewall por IP + backup probado. Las tres, no una.
  • Elige la ruta por tu escenario (probar / gratis / cliente / cero mantenimiento), no por la marca.

Apéndice: Comandos Útiles para el Mantenimiento

# Ver cuánta RAM y CPU usa n8n
docker stats n8n

# Ver logs de n8n (últimas 20 líneas, en vivo)
docker compose logs -f --tail 20

# Reiniciar n8n sin perder datos
docker compose restart

# Actualizar n8n a la última versión
docker compose pull
docker compose up -d

# Ver cuánto espacio ocupan los datos
du -sh ~/n8n/data

# Backup rápido
tar -czf ~/n8n-backup-$(date +%Y-%m-%d).tar.gz -C ~/n8n data

# Restaurar backup
tar -xzf ~/n8n-backup-2026-06-10.tar.gz -C ~/n8n

Kit: Hosting n8n en la Nube

ArchivoDescripción
⬇ docker-compose-cloud.yml Docker Compose variante cloud (GCP)
⬇ Dockerfile.railway Dockerfile para Railway (4 líneas)
⬇ railway.json Configuración JSON para Railway
⬇ cloudflared-config.yml Configuración YAML para Cloudflare Tunnel
⬇ backup-n8n.sh Script shell para backup local
⬇ backup-n8n-drive.sh Script shell para backup a Google Drive

📁 kits/m10.1-hosting/