Ir al contenido principal

Tutorial: n8n con Docker Compose en Linux

Tutorial Completo: Instalar y correr n8n en Linux con Docker Compose

Este tutorial te guiará paso a paso para instalar y ejecutar n8n usando Docker Compose en un sistema Linux (como Ubuntu), con buenas prácticas y configuraciones recomendadas.

---

1. Actualizar el sistema

Es buena práctica empezar actualizando los paquetes y sistema:

sudo apt update
sudo apt upgrade -y
---

2. Instalar dependencias necesarias para Docker

sudo apt install -y ca-certificates curl gnupg lsb-release
---

3. Agregar repositorio oficial de Docker

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
---

4. Instalar Docker y plugin Docker Compose

sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
---

5. Verificar versión Docker y Docker Compose

docker --version
docker compose version

Deberías ver algo así como Docker version 20.x.x y Docker Compose version v2.x.x.

---

6. Agregar tu usuario al grupo docker (para usar Docker sin sudo)

sudo usermod -aG docker $USER

Luego, cerrá sesión y volvé a entrar para aplicar los cambios.

---

7. Verificar que el servicio Docker esté activo y habilitado al inicio

systemctl status docker
systemctl is-enabled docker

Si el servicio no está activo o habilitado, arrancalo con:

sudo systemctl start docker
sudo systemctl enable docker
---

8. Crear carpeta para tu proyecto y archivo docker-compose.yml

Ejemplo de ruta para crear la carpeta y ubicarse:

mkdir -p ~/Documentos/docker/n8n
cd ~/Documentos/docker/n8n

Luego creá el archivo docker-compose.yml con el siguiente contenido (sin la línea version: porque es obsoleta):

services:
  n8n:
    image: n8nio/n8n
    ports:
      - "5678:5678"
    environment:
      - N8N_BASIC_AUTH_ACTIVE=true
      - N8N_BASIC_AUTH_USER=hugo
      - N8N_BASIC_AUTH_PASSWORD=tu_password_segura
    volumes:
      - ./n8n_data:/home/node/.n8n
    restart: always
---

9. Levantar n8n con Docker Compose

docker compose up -d

Si da error de permisos, usá sudo o asegurate que tu usuario esté en el grupo docker.

---

10. Acceder a n8n

  • Desde la misma máquina: http://localhost:5678
  • Desde otra PC en la red local: http://<ip-local>:5678 (para ver la IP local usá ip a)
---

11. Comandos útiles

  • Ver contenedores corriendo: docker ps
  • Parar y borrar contenedores: docker compose down
  • Ver logs en tiempo real: docker compose logs -f
---

12. Backup automático de datos

El directorio ./n8n_data contiene tus workflows, credenciales y datos. Para hacer backups, podés crear un cron job diario:

0 3 * * * tar -czf /home/hugo/backup_n8n_$(date +\%F).tar.gz /home/hugo/Documentos/docker/n8n/n8n_data
---

13. Actualizar n8n

docker compose pull
docker compose up -d
---

14. Consideraciones de seguridad

  • Activar autenticación básica (ya incluido en el archivo).
  • Evitar exponer n8n directamente a Internet sin VPN o túneles seguros.
  • Usar contraseñas seguras.
---

15. Extras y variables útiles

  • N8N_EDITOR_BASE_URL: para configurar la URL pública si usás túneles o proxies.
  • N8N_PORT: cambiar puerto interno.
  • WEBHOOK_TUNNEL_URL: para que n8n genere URLs públicas en webhooks.
---

Comentarios

Entradas populares de este blog

Instalación y Configuración de MySQL 5.7 en Ubuntu 24.04 LTS

Instalar MySQL 5.7 en Ubuntu 24.04 1. Descargar e instalar MySQL Copiar mkdir ~/mysql57 cd ~/mysql57 wget https://cdn.mysql.com/archives/mysql-5.7/mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz tar -zxvf mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz sudo mv mysql-5.7.44-linux-glibc2.12-x86_64 /usr/local/mysql sudo ln -s /usr/local/mysql/bin/mysql /usr/local/bin/mysql 2. Instalar dependencias necesarias IMPORTANTE: Se descargan las versiones nuevas de las librerías y se las vincula con las librerías que necesita MySQL. Copiar sudo apt update # Reemplazo de libaio sudo apt install libaio1t64 # Reemplazo de libtinfo y ncurses sudo apt install libtinfo6 libncurses6 Copiar # Crear los enlaces simbólicos sudo ln -sf /usr/lib/x86_64-linux-gnu/libaio.so.1t64 /usr/lib/libaio.so.1 sudo ln -sf /usr/lib/x86_64-linux-gnu/libtinfo.so.6 /usr/lib/x86_64-linux-gnu/libtinfo.so.5 sudo ln -sf /usr/lib/x86_64-linux-gnu/libncurses.so.6 /usr/lib/x86_64...

Instalar DeepSeek R1 1.5B en Ubuntu 24.04 sin GPU

Instalar DeepSeek en tu sistema sin GPU, pasos: Especificaciones del Entorno de Pruebas Componente Detalle SO Ubuntu Cinnamon 24.04 LTS x86_64 Kernel 6.8.0-51-generic CPU Intel i7-6820HQ (8 núcleos) @ 3.600GHz GPUs AMD ATI Radeon HD 8830M / R7 250 / R7 M465X Intel HD Graphics 530 RAM 15.882 GB (3.716 GB en uso) Resolución 1440x810 Escritorio Cinnamon 6.0.4 1. Instalar Git LFS sudo apt-get install git-lfs git lfs install 2. Clonar el repositorio cd /opt sudo mkdir deepseek && sudo chown $USER:$USER deepseek cd deepseek git clone https://huggingface.co/deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B 3. Crear y activar un entorno virtual python -m ve...

Instalar Jasper Studio 6.21 para Ubuntu 24.04

Instalar js-studiocomm_6.21.3 en Ubuntu 24.4 Para instalar Jaspersoft Studio en Ubuntu 24.4, sigue estos pasos: 1. Descargar Jasper Studio Descarga la versión js-studiocomm_6.21.3 desde el siguiente enlace: Jaspersoft Studio 6.21.3 2. Crear el directorio de instalación mkdir /opt/jasperstudio 3. Mover el archivo descargado mv /dir_descarga/js-studiocomm_6.21.3_linux_x86_64.tgz /opt/jasperstudio/ cd /opt/jasperstudio 4. Extraer el archivo tar -xvzf js-studiocomm_6.21.3_linux_x86_64.tgz cd js-studiocomm_6.21.3 5. Ejecutar Jaspersoft Studio ./Jaspersoft\ Studio 6. Crear acceso directo en el escritorio Para facilitar el acceso, crea un archivo .desktop en el escritorio: gedit ~/Escritorio/jaspersoft-studio.desktop En el archivo jaspersoft-studio.desktop , agrega lo siguiente: [Desktop Entry] Version=1.0 Ty...