EN
en direct

Docker Compose 5.4 adopte la réconciliation déclarative — vos volumes et réseaux deviennent un plan, pas un script

La version **5.4.0** de Docker Compose, publiée le **3 août 2026**, introduit un moteur de réconciliation qui modélise le cycle de vie des volumes et réseaux comme un plan déclaratif. L’outil de 95 % des développeurs franchit un cap d’infrastructure.

Un plan d’architecte bleu posé sur une table en métal, éclairé par une seule DEL ambrée — les lignes du plan se redessinent d’elles-mêmes tandis qu’un conteneur Docker flou apparaît en arrière-plan.

3 août 2026. Docker Inc. publie Compose v5.4.0. Deux lignes dans le changelog. Une révolution silencieuse pour les 95 % de développeurs qui utilisent Compose au quotidien.

Les deux features en question — model volume recreation in the plan et model network lifecycle in the plan — ne paient pas de mine. Mais elles introduisent un concept que Kubernetes a rodé pendant dix ans et que Terraform a imposé à l’infrastructure cloud : la réconciliation déclarative.

Votre fichier compose.yml n’est plus une suite d’instructions. C’est un état désiré que le moteur compare à l’état réel, puis corrige.

Ce que change la réconciliation pour les volumes

Avant Compose 5.4, le cycle de vie d’un volume était binaire : il existe, ou il n’existe pas. docker compose up créait les volumes manquants. docker compose down les supprimait (avec -v). Entre les deux, rien.

Avec la réconciliation, Compose modélise désormais le volume comme une ressource à part entière dans un plan d’exécution. Concrètement :

  • Un volume dont la configuration a changé — driver opts, labels, nom — est détecté comme dérivé de l’état désiré.
  • Compose peut désormais recréer un volume proprement : vidage des données, suppression, recréation avec la nouvelle configuration.
  • Le plan est visible avant exécution. Plus de surprise quand docker compose up -d décide de recréer un conteneur ou un volume.

Pour les équipes qui gèrent des stacks multi-services avec des volumes nommés, cette évolution réduit considérablement les erreurs de configuration silencieuses. Un volume mal configuré ne reste plus indéfiniment en production — Compose le signale et propose de le corriger.

yaml
# compose.yml — Compose 5.4 détecte les dérives de configuration
services:
  postgres:
    image: postgres:17
    volumes:
      - pgdata:/var/lib/postgresql/data

volumes:
  pgdata:
    driver: local
    driver_opts:
      type: none
      device: /mnt/fast-ssd/pgdata
      o: bind

Si vous changez device de /mnt/fast-ssd vers /mnt/nvme-raid, Compose 5.4 modélise la recréation du volume dans le plan. Vous voyez ce qui va se passer avant que les données ne soient affectées.

Les réseaux entrent aussi dans le plan

Le même traitement s’applique aux réseaux. Compose 5.4 modélise le cycle de vie complet d’un réseau dans le plan de réconciliation :

  • Création, mise à jour des options de driver, changement de subnet.
  • Détection des conflits de plages IP entre réseaux d’une même stack.
  • Suppression propre quand un réseau n’est plus référencé par aucun service — sans laisser de réseaux orphelins.

Pour les déploiements multi-services avec des réseaux segmentés (frontend, backend, monitoring), cette modélisation évite les classiques « network not found » après un docker compose down && docker compose up.

Un pattern qui vient de Kubernetes — et c’est une bonne chose

La réconciliation est le cœur du control loop de Kubernetes. Le controller observe l’état réel du cluster, le compare à l’état désiré (les manifests YAML), et prend les actions correctives nécessaires. Ce pattern a fait ses preuves à l’échelle de millions de conteneurs.

Docker Compose ne vise pas la même échelle. Mais il vise la même fiabilité. Un développeur qui lance docker compose up s’attend à ce que son environnement soit conforme au fichier compose.yml. Pas « à peu près conforme ». Pas « conforme sauf le réseau qu’on a oublié de supprimer la dernière fois ». Conforme.

Le moteur de réconciliation de Compose 5.4 applique cette philosophie à l’échelle du poste de travail et du petit serveur. C’est un changement de paradigme plus important que la somme des lignes de code qui l’implémentent.

Les autres améliorations de la 5.4.0

La release 5.4 ne se résume pas à la réconciliation. Plusieurs correctifs améliorent la robustesse au quotidien :

  • Hachage des services à zéro réplica préservé pendant la réconciliation — vos services désactivés ne sont pas accidentellement supprimés.
  • Avertissement explicite quand la sélection de service (--service) est silencieusement ignorée par une commande.
  • Correction du build multi-plateforme : Compose utilise désormais le digest du manifest d’image, pas l’index attesté, pour les builds multi-arch.
  • Respect de --insecure-registry pendant le reload du modèle OCI — vos registres privés auto-signés fonctionnent correctement.
  • Variables d’environnement tolérantes : les commandes runtime comme scale, watch et shell completion n’échouent plus si un fichier .env est absent.

Un détail intéressant pour les équipes DevOps : Docker Compose adopte le standard AGENTS.md et requiert désormais un fichier AI_AGENT_DISCLOSURE.md daté pour toute contribution assistée par IA. Une première dans l’écosystème Docker — et un signal que la supply chain des contributions open source devient un enjeu de gouvernance.

Ce que ça change pour vos pipelines CI

La réconciliation déclarative a un impact direct sur les pipelines CI. Beaucoup d’équipes utilisent Compose dans leurs jobs d’intégration pour démarrer les services nécessaires aux tests :

yaml
# .github/workflows/test.yml
- name: Start services
  run: docker compose up -d --wait postgres redis
- name: Run tests
  run: go test ./...

Avec Compose 5.4, le docker compose up garantit que les volumes et réseaux sont exactement dans l’état spécifié par compose.yml. Pas de dérive entre les runs. Pas de réseau orphelin qui persiste et fausse le test suivant. La reproductibilité des environnements de test franchit un cran.

Le verdict

Docker Compose 5.4 n’est pas une release majeure en numéro de version. Mais elle pose la première brique d’un moteur de réconciliation qui rapproche Compose des standards de fiabilité de l’infrastructure déclarative.

Si vous utilisez Compose en production — sur un VPS, un serveur bare metal ou dans un pipeline CI — cette mise à jour rend votre stack plus fiable sans changer vos fichiers YAML. C’est le meilleur type de mise à jour : celle qui améliore la sécurité de fonctionnement sans demander de migration.

Mettez à jour avec docker compose version pour vérifier votre version actuelle, puis suivez les instructions d’installation officielles. La 5.4.0 est disponible sur GitHub Releases et via les gestionnaires de paquets.

Références

Le brief cyber, chaque mardi

Les failles qui comptent, les correctifs à appliquer, en dix minutes de lecture.

Pas de spam. Désinscription en un clic.
à lire ensuite

Sur le même sujet

Meta lance Muse Code et divise par dix le prix des coding agents face à Claude Code

Le 5 août 2026, Meta est entré sur le marché des agents de codage avec Muse Code, un agent terminal propulsé par Muse Spark 1.2. Au lieu de rivaliser sur l’intelligence brute du modèle, Meta a construit le harnais le plus avancé du marché : fan-out multi-agent, worktrees Git isolés, journal d’audit JSONL complet, et un prix jusqu’à dix fois inférieur à Claude Code. Voici ce que ça change pour les équipes DevOps.

← Retour au fil

Tapez au moins deux caractères.

naviguer ouvrir esc fermer