Blog Logo

04 Mar 2025 ~ 5 min read

Cómo Tener n8n en un Servidor Totalmente Gratis (Sin Suscripciones)


¡Ey! Hoy os traigo un tutorial que sé que os va a gustar. Vamos a montar n8n en un servidor totalmente gratis, sin pagar ni un duro de suscripciones. Sí, has leído bien: ¡GRATIS! Si te interesa automatizar procesos y conectar aplicaciones sin necesidad de saber programar, quédate que esto te va a cambiar la vida (o al menos te ahorrará tiempo y dinero).


El vídeo de youtube donde hablo de este tema:

Instala N8N en la nube GRATIS | Tutorial completo

¿Qué es n8n y por qué deberías prestarle atención?

Vamos al grano: n8n es una plataforma de automatización de flujos de trabajo de código abierto. Dicho en cristiano: puedes conectar aplicaciones y servicios para que hagan tareas automáticas sin tener que tocar una línea de código (aunque si sabes algo de JavaScript, puedes fliparlo aún más).

¿Por qué mola tanto?

  • Código abierto: Es gratis y puedes modificarlo a tu gusto, sin limitaciones absurdas.
  • Flexibilidad a otro nivel: Si controlas algo de JavaScript, puedes personalizar los flujos como te dé la gana.
  • Interfaz visual: Montas todo arrastrando y soltando nodos, como si estuvieras jugando con Lego.

Ejemplos prácticos (o cómo te puede hacer la vida más fácil)

  • Publicar automáticamente en redes sociales cuando subes un vídeo a YouTube.
  • Automatizar tareas de administración, como enviar facturas o recordatorios.
  • Conectar tus herramientas favoritas y hacerlas trabajar en equipo sin mover un dedo.

¿Qué lo diferencia de otros como Zapier o Integromat?

  • Sin límites estrictos: Olvídate de los límites de flujos o ejecuciones, aquí mandas tú.
  • Self-hosted: Lo instalas en tu propio servidor, así que tú tienes el control de tus datos (y no dependes de terceros).

Instalando n8n GRATIS (sí, GRATIS) en un Servidor Oracle

Vale, vamos al lío. Lo primero que necesitamos es un servidor, y antes de que digas “pero eso cuesta dinero”, te aviso: ¡NO! Puedes conseguir un servidor gratis de Oracle. De hecho, ya hice un tutorial sobre esto, échale un vistazo si no lo has visto aún.

Consigue un Servidor Gratis para siempre

Paso 1: Conectarse al servidor por SSH

Lo primero es conectarnos al servidor por SSH. ¿Cómo? Muy fácil:

ssh -i nombre_de_tu_clave_privada usuario@ip_del_servidor

Nota: La clave privada es la que guardaste al crear la instancia en Oracle. Si te da problemas, asegúrate de darle los permisos correctos con:

chmod 600 nombre_de_tu_clave_privada

O si estás en Windows

icacls "C:\ruta\de\tu\clave_privada.pem" /inheritance:r
icacls "C:\ruta\de\tu\clave_privada.pem" /grant:r "%USERNAME%:R"

Paso 2: Configurar el servidor y abrir puertos

Antes de nada, hay que abrir los puertos 80 y 443 en Oracle para que nuestro servidor sea accesible por HTTP y HTTPS. Si no sabes cómo hacerlo, en el tutorial de Oracle te explico paso a paso cómo configurar esto.

Paso 3: Actualizar el sistema operativo

Ya conectados al servidor, actualizamos el sistema operativo:

sudo apt update && sudo apt upgrade -y

Paso 4: Instalar Docker

Vamos a usar Docker para montar n8n. Instalamos Docker con los siguientes comandos:

sudo apt install ca-certificates curl gnupg lsb-release
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin

Paso 5: Instalar Caddy (Reverse Proxy)

Usaremos Caddy como reverse proxy para que nuestro contenedor de Docker esté accesible desde fuera. Esto es lo que tienes que hacer:

sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list
sudo apt update
sudo apt install caddy

Paso 6: Configurar Docker Compose para n8n

Creamos la carpeta de n8n y el archivo docker-compose.yml:

mkdir n8n
cd n8n
nano docker-compose.yml

Añadimos el siguiente contenido:

version: '2'
services:
  n8n:
    image: n8nio/n8n:latest
    restart: unless-stopped
    ports:
      - 5678:5678
    environment:
      - GENERIC_TIMEZONE=Europe/Berlin
      - WEBHOOK_URL=https://tu-dominio/
    volumes:
      - ./n8n_data:/home/node/.n8n

Creamos la carpeta para los datos persistentes y le damos permisos:

mkdir n8n_data
sudo chown -R 1000:1000 ./n8n_data
sudo chmod -R 755 ./n8n_data

Arrancamos el contenedor:

sudo docker compose up -d

elimina iptables sudo apt remove iptables-persistent

reinicia

sudo reboot now


Paso 7: Configurar Caddy para Acceso Público

Editamos el archivo de configuración de Caddy:

sudo nano /etc/caddy/Caddyfile

Añadimos esta configuración:

tu-dominio.com {
    reverse_proxy localhost:5678 {
        flush_interval -1
    }
}

Validamos la configuración y reiniciamos Caddy:

sudo caddy validate --config /etc/caddy/Caddyfile
sudo systemctl restart caddy

Paso 8: Vincular el dominio con el servidor

Vamos a nuestro proveedor de dominios (en mi caso uso Cloudflare) y añadimos un registro DNS que vincule nuestro dominio con la IP del servidor.


¡Listo! ¡Ya tienes n8n corriendo en tu servidor!

Si has seguido todos los pasos, deberías poder acceder a n8n desde tu dominio y empezar a automatizar tareas como un pro. ¿A qué esperas para probarlo?


Edu Navajas Profile

Hola! soy Edu. Soy un desarrollador de software con más de 5 años de experiencia Puedes seguirme en Linkedin y ver mi trabajo en GitHub.

← Volver al blog