veröffentlicht 2026-04-02
Hör auf, `:latest` zu verwenden
Verwende den Tag `:latest` nicht für Deployments.
`latest` ist keine Version. Es ist ein bewegliches Label. Die Versionsverwaltung sollte festlegen, welche externen Versionen dein System ausführt. Wenn sich das Image ändert, sollte sich auch die Compose-Datei ändern.
Ja, manuell upzugraden ist manchmal nervig. Es lohnt sich trotzdem. Fixierte Versionen sorgen für stabile Deployments, vorhersehbare Rollbacks und einen klaren Upgrade-Pfad.
Sie machen auch Tooling nützlich. Renovate kann dir sagen, dass es ein neueres Image gibt und dass deine Codebase noch auf das alte zeigt. Ein fixierter Tag oder Digest ist durchsuchbar. Du kannst das Repository inspizieren und einfache Fragen beantworten: was ist deployed, was hat sich geändert, was sollte zurückgerollt werden.
Mit `:latest` ist diese Kontrolle weg. Du kannst deployed Versionen nicht zuverlässig über die Codebase hinweg nachverfolgen. Du kannst veraltete Images nicht einfach auditieren. Wenn ein Docker-Compose-Deployment kaputtgeht und du zurückrollen musst, macht `:latest` aus einem einfachen Versionsproblem Rätselraten.
Das gilt sogar fürs Self-Hosting. Vielleicht sogar besonders dort, weil man genau da am ehesten versucht ist, faul zu sein.