Cómo Actualizar n8n: Guía Paso a Paso sin Perder Datos

N8n actualizar versión es uno de los usos más prácticos de n8n. Mantener n8n actualizado es fundamental para tener las últimas funcionalidades, correcciones de seguridad y nuevos nodos. En esta guía te explico cómo actualizar n8n de forma segura según el método de instalación que uses, sin perder ningún workflow ni credencial.

Antes de actualizar n8n: haz un backup

Antes de cualquier actualización, haz siempre un backup. Es el paso más importante:

# Backup de la base de datos (PostgreSQL)
docker compose exec -T postgres pg_dump -U n8n n8n > backup_antes_update.sql

# O exportar todos los workflows
docker compose exec n8n n8n export:workflow --all --output=/tmp/backup_workflows/

Si algo falla durante la actualización, podrás restaurar en minutos.

Actualizar n8n con Docker Compose

Es el método más común y el más sencillo para actualizar la versión de n8n:

cd /opt/n8n

# Descargar la nueva imagen
docker compose pull

# Reiniciar solo el contenedor de n8n (sin tocar la base de datos)
docker compose up -d --no-deps n8n

# Verificar que arrancó correctamente
docker compose logs -f n8n

El proceso completo tarda menos de 2 minutos. Si la nueva versión tiene migraciones de base de datos, n8n las aplica automáticamente al arrancar.

Actualizar n8n con Docker run

Si usas Docker sin Compose:

# Detener el contenedor actual
docker stop n8n

# Eliminar el contenedor (los datos están en el volumen, no se pierden)
docker rm n8n

# Descargar la última imagen
docker pull n8nio/n8n

# Arrancar con la misma configuración de antes
docker run -d \
  --name n8n \
  -p 5678:5678 \
  -v n8n_data:/home/node/.n8n \
  -e N8N_HOST=tudominio.com \
  -e N8N_PROTOCOL=https \
  n8nio/n8n

Actualizar n8n instalado con npm

Si instalaste n8n directamente con npm:

# Actualizar a la última versión
npm update -g n8n

# Verificar la versión instalada
n8n --version

Si usas pm2 para gestionar el proceso:

pm2 stop n8n
npm update -g n8n
pm2 start n8n

Actualizar a una versión específica de n8n

A veces necesitas actualizar n8n a una versión concreta, por ejemplo para probar una nueva función o porque la última versión tiene un bug:

# Con Docker Compose, edita docker-compose.yml
image: n8nio/n8n:1.68.0

# Con npm
npm install -g n8n@1.68.0

Consulta todas las versiones disponibles en hub.docker.com/r/n8nio/n8n/tags.

Actualizar n8n en Railway

Si tienes n8n desplegado en Railway:

  1. Ve a tu proyecto en Railway
  2. Selecciona el servicio n8n
  3. Ve a Settings → Source
  4. Cambia la versión de la imagen Docker si es necesario
  5. Railway redespliega automáticamente con la nueva versión

Qué hacer si la actualización falla

Si algo falla al actualizar la versión de n8n, sigue estos pasos:

  1. Revisa los logs: docker compose logs n8n para ver el error específico
  2. Vuelve a la versión anterior: especifica la versión anterior en el docker-compose.yml
  3. Restaura el backup: si la base de datos se corrompió, restaura el backup que hiciste antes
# Volver a la versión anterior
docker compose stop n8n
# Edita docker-compose.yml: image: n8nio/n8n:VERSION_ANTERIOR
docker compose up -d n8n

Automatizar las actualizaciones con Watchtower

Puedes usar Watchtower para que n8n se actualice automáticamente cuando haya una nueva versión:

watchtower:
  image: containrrr/watchtower
  volumes:
    - /var/run/docker.sock:/var/run/docker.sock
  command: --interval 86400 n8n  # Comprueba cada 24h

Añade este servicio a tu docker-compose.yml. Ten en cuenta que las actualizaciones automáticas sin revisar el changelog pueden romper workflows si hay cambios importantes.

Conclusión

Actualizar n8n con Docker es un proceso de dos comandos que tarda menos de 2 minutos. La clave está en hacer siempre un backup antes y revisar el changelog cuando haya versiones mayores. Mantener n8n actualizado te garantiza acceso a los nuevos nodos, mejoras de rendimiento y parches de seguridad.