опубліковано 2026-04-02
Припиніть використовувати `:latest`
Не використовуйте тег `:latest` для деплойментів.
`latest` — це не версія. Це рухома мітка. Контроль версій має визначати, які зовнішні версії запускає ваша система. Якщо образ змінюється, Compose-файл теж має змінюватися.
Так, інколи оновлювати вручну дратує. Але воно того варте. Зафіксовані версії дають стабільні деплойменти, передбачувані відкати та зрозумілий шлях оновлень.
Вони також роблять інструменти справді корисними. Renovate може повідомити, що існує новіший образ, і що ваша кодова база все ще вказує на старий. Зафіксований тег або дайджест можна знайти пошуком. Ви можете переглянути репозиторій і відповісти на прості запитання: що задеплоєно, що змінилося, що слід відкотити.
Із `:latest` цей контроль зникає. Ви не можете надійно відстежувати задеплоєні версії через кодову базу. Ви не можете легко аудитити застарілі образи. Коли деплоймент Docker Compose ламається і потрібно відкотитися, `:latest` перетворює просту проблему версії на вгадування.
Це стосується навіть self-hosting. Можливо, особливо його — бо саме там люди найбільше спокушаються полінуватися.