publié 2026-04-02
Arrêtez d’utiliser `:latest`
N’utilisez pas le tag `:latest` pour les déploiements.
`latest` n’est pas une version. C’est une étiquette mouvante. Le contrôle de version devrait définir quelles versions externes votre système exécute. Si l’image change, le fichier Compose devrait changer aussi.
Oui, mettre à niveau manuellement est parfois pénible. Ça en vaut quand même la peine. Des versions épinglées donnent des déploiements stables, des retours en arrière prévisibles et un chemin de mise à niveau clair.
Elles rendent aussi les outils utiles. Renovate peut vous dire qu’une image plus récente existe et que votre base de code pointe toujours vers l’ancienne. Un tag épinglé ou un digest est recherchable. Vous pouvez inspecter le dépôt et répondre à des questions simples : qu’est-ce qui est déployé, qu’est-ce qui a changé, qu’est-ce qui doit être rollback.
Avec `:latest`, ce contrôle disparaît. Vous ne pouvez pas suivre de manière fiable les versions déployées via la base de code. Vous ne pouvez pas facilement auditer les images obsolètes. Quand un déploiement Docker Compose casse et que vous devez revenir en arrière, `:latest` transforme un simple problème de version en jeu de devinettes.
Cela s’applique même à l’auto-hébergement. Peut-être surtout là, parce que c’est précisément là que les gens sont le plus tentés d’être paresseux.