目前,在Jenkins的工作中,我使用git存储库中的文件构建了一个Docker镜像。当更改/更新此存储库时,我想要:
什么是干净有效的解决方案?我应该在每次运行工作时构建图像吗?
答案 0 :(得分:0)
这个很简单,首先你用什么来托管你的git?希望github / gitlab?如果是这样的话,像@amit所提到的“轮询”SCM就是矫枉过正。
为什么让jenkins查找更改,当git服务器可以提醒jenkins更改?
您要做的是设置一个为您构建泊坞窗图像的jenkins作业
然后在github / gitlab上,为jenkins项目设置一个Web钩子(项目设置 - > web钩子)。
这样,当您将更改推送到GH / GL时,它会向jenkins发送一个有效负载,然后运行您的构建项目
答案 1 :(得分:-1)
您可以配置“轮询SCM”构建触发器 - 这将导致Jenkins定期检查您的git存储库以进行更改,并且只有在检测到更改时才会触发构建步骤。 (我假设您的构建步骤将执行docker build
)。
您可以在此处找到更多信息 - https://wiki.jenkins-ci.org/display/JENKINS/Building+a+software+project#Buildingasoftwareproject-Buildsbysourcechanges