По моему опыту, не очень хорошая практика помечать ваши изображения номерами сборки как часть "версии" вашего изображения. Как указано в SemVer , третья часть номера версии представляет собой «Патч», представляющий собой исправление, не требующее исправления.
Проблема с простым добавлением номера сборки в качестве версии патчачто вы не обязательно представляете патч при каждой сборке.Например, представьте, что вы работаете над исправлением (которое будет выпущено как версия патча).Но вы не правильно фиксируете это при первом коммите / толчке в вашу рабочую ветку.Эта первая сборка уже будет приращением номера сборки, как и любые другие перемещения от других разработчиков к другим ветвям.И все это будет зависеть от того, как настроен ваш CI.
Если вам нужно , чтобы указать номер сборки, то вы можете использовать свой номер сборки CI (я думаю, что все решения CI обеспечивают) и добавьте их в свой тег в качестве четвертого элемента в semver (например: 2.4.1-2312
, где 2312
- номер сборки), и как только он будет выпущен, вы можете увеличить тег до 2.4.2
.
Если вы хотите соблюдать обычные правила докера, вы также должны пометить 2.4.2
как 2.4
, 2
и latest
, если вы хотите его выпустить.
Мой последнийСоветую всегда помечать изображение полным SHA коммита, который вы строите, поскольку нет более простого способа сопоставить изображение с моментом времени в вашей кодовой базе.