我正在创建一个Jenkins管道,用于构建多个微服务,并创建docker映像并将其推送到私有Docker注册表。
泊坞窗图像是通过docker插件通过Gradle构建创建的,我什至可以推送图像。
我需要以下问题的帮助。
答案 0 :(得分:1)
在Windows中使用%BUILD_NUMBER%,在Linux中使用$ {BUILD_NUMBER}
您可以按照以下说明进行操作。 例如:docker build -t图片名称:%BUILD_NUMBER%
答案 1 :(得分:0)
1-出于标记目的,您可以使用詹金环境变量,例如BUILD_NUMBER
有关详细信息,请查看以下链接:https://wiki.jenkins.io/display/JENKINS/Building+a+software+project
2-要保持要在docker注册表中保留的最大映像数量,取决于提供商。
例如:jFrog的Artifactory
https://www.jfrog.com/confluence/display/RTF/Docker+Registry
设置最大唯一标签。这指定了每个存储库应为Docker映像存储的唯一标记的最大数量。一旦图像的标签数量超过此数量,较旧的标签将被删除。将该字段保留为空白(默认)表示将存储所有标签。
答案 2 :(得分:0)
Jenkins基本上公开了BUILD_NUMBER env变量,我们可以像下面这样在gradle文件中简单地读取它,并使用该变量命名docker镜像
buildscript {
ext {
springBootVersion = "2.1.3.RELEASE"
dependencyManagementVersion = "1.0.7.RELEASE"
gradleDockerVersion = "0.13.0"
spotBugsVersion = "1.7.1"
guavaVersion = "27.0.1-jre"
nodeVersion = "1.3.1"
buildNumber = System.getenv("BUILD_NUMBER")!=null? System.getenv("BUILD_NUMBER") : "latest"
}
.....
.....
.....
}