Mettre à jour n8n avec Docker Compose

Voici une documentation claire et concise en français sur comment mettre à jour n8n auto-hébergé avec Docker Compose.

🧾 Pré-requis

  • Docker et Docker Compose installés sur votre serveur Ubuntu/Debian.
  • n8n est déjà installé avec Docker et Traefik.
  • Un nom de domaine configuré pour accéder à votre instance (ex: https://n8n.mondomaine.com).
  • Accès SSH root ou sudo à votre serveur.
  • Avoir déjà utilisé un docker-compose.yml pour lancer votre n8n.

✅ Étapes de mise à jour

1. 📦 Vérifier la dernière version disponible

docker pull n8nio/n8n
docker run --rm n8nio/n8n:latest n8n --version

2. 🔐 Faire une sauvegarde avant toute mise à jour

Dans le cas où une erreur de mise à jour se produirait, votre sauvegarde vous permet de revenir en arrière. Cette précaution est particulièrement vitale dans les environnements de production.

a. Créez un snapshot de votre VPS si vous êtes chez Contabo (ou autre provider)

Dans l’interface Contabo, sélectionnez votre VPS et choisissez create new snapshot.

🌐 Pourquoi choisir Contabo pour héberger votre serveur n8n ?

Contabo est une excellente option pour héberger un serveur n8n grâce à son rapport qualité/prix imbattable.

Avec des VPS performants à partir de quelques euros par mois, vous bénéficiez de ressources généreuses (RAM, CPU, stockage SSD/NVMe) et d’une bande passante illimitée — parfait pour exécuter des automatisations complexes en toute fluidité. La possibilité de créer des snapshots en un clic avant chaque mise à jour vous offre une sécurité supplémentaire, sans complexité.

Que vous lanciez un projet ou que vous gériez déjà plusieurs workflows, Contabo fournit une base fiable, économique et évolutive pour faire tourner n8n en continu.

Vous pourrez revenir rapidement en arrière en cas de problème.

b. Sauvegarde manuelle des données n8n

cd /root/n8n
docker compose down

# Sauvegarde de l’image actuelle
docker save -o backup_n8n_custom.tar n8nio/n8n:latest

# Sauvegarde des données persistantes
docker run --rm -v n8n_data:/data -v $(pwd):/backup alpine \
  sh -c "tar cvzf /backup/backup_n8n_data.tar.gz /data"

3. 🔄 Mettre à jour l’image n8n

cd /root/n8n
docker pull n8nio/n8n
docker compose down
docker compose build --no-cache
docker compose up -d

💡 –no-cache permet une reconstruction complète sans utiliser de cache.


4. 📋 Vérifier la version déployée

docker exec -it n8n-n8n-1 n8n --version

(Le nom du conteneur peut varier selon votre config – adaptez au besoin)


5. 🧹 Nettoyage (optionnel)

docker image prune -f

Cela libère de l’espace disque en supprimant les anciennes images non utilisées.


🧯 Restaurer n8n en cas de problème

Si la mise à jour échoue ou provoque des erreurs :

# Restauration de l’image
docker load -i backup_n8n_custom.tar

# Restauration des données
docker run --rm -v n8n_data:/data -v $(pwd):/backup alpine \
  sh -c "tar xvzf /backup/backup_n8n_data.tar.gz -C /data"

# Relancer le conteneur
docker compose up -d

🧪 Bonus : Inspecter votre image Docker custom

docker run --rm -it --entrypoint sh n8nio/n8n:latest

✅ Résumé rapide

cd /root/n8n
docker pull n8nio/n8n
docker compose down
docker image rm n8nio/n8n:latest    # facultatif
docker compose build --no-cache
docker compose up -d
docker exec -it n8n-n8n-1 n8n --version

📚 Références

Publications similaires