Существуют различные стратегии версионирования образов:
Семантическое версионирование: Используем MAJOR.MINOR.PATCH.
Версионирование по хэшу Git: Используем полный или сокращенный хэш последнего комита. Гарантирует уникальность.
Версионирование по номеру сборки Jenkins: Используем автоинкрементный номер сборки Jenkins. Просто, но не привязано к исходному коду напрямую.
Комбинированное версионирование: Сочетание, например, app_version-jenkins_build
или app_version-git_commit
.
Интеграция с Jenkins включает следующие шаги:
Получение версии: В пайплайне Jenkins определяем версию образа. Это может быть:
package.json
, pom.xml
и т.д.).git rev-parse HEAD
).$BUILD_NUMBER
).Сборка образа с тегом: Используем команду docker build
с опцией -t
для присвоения тега образу.
dockerfile
В Jenkinsfile:
groovy
Разметка (tagging) для репозитория (опционально): Для удобства можно создать дополнительные теги, например latest
или тег для окружения (dev
, staging
, prod
).
groovy
Существуют различные стратегии версионирования образов:
Семантическое версионирование: Используем MAJOR.MINOR.PATCH.
Версионирование по хэшу Git: Используем полный или сокращенный хэш последнего комита. Гарантирует уникальность.
Версионирование по номеру сборки Jenkins: Используем автоинкрементный номер сборки Jenkins. Просто, но не привязано к исходному коду напрямую.
Комбинированное версионирование: Сочетание, например, app_version-jenkins_build
или app_version-git_commit
.
Интеграция с Jenkins включает следующие шаги:
Получение версии: В пайплайне Jenkins определяем версию образа. Это может быть:
package.json
, pom.xml
и т.д.).git rev-parse HEAD
).$BUILD_NUMBER
).Сборка образа с тегом: Используем команду docker build
с опцией -t
для присвоения тега образу.
dockerfile
В Jenkinsfile:
groovy
Разметка (tagging) для репозитория (опционально): Для удобства можно создать дополнительные теги, например latest
или тег для окружения (dev
, staging
, prod
).
groovy
Зарегистрируйтесь или войдите, чтобы получить доступ к полным ответам на все вопросы из банка вопросов.