有没有一种方法可以将现有的docker映像与最新的源(Git)进行比较,并仅在发生任何代码更改时进行构建?

时间:2018-07-27 09:26:02

标签: git docker

我有一个gradle任务,该任务使用Git中的产品代码创建docker映像。运行任务时,将创建docker image并将其推送到存储库/集线器。但是我想检查一下,只有与最后/最新的docker映像相比,在代码更改时才在哪里做。

2 个答案:

答案 0 :(得分:0)

一种执行此操作的方法是将docker build包装在shell脚本中。 该脚本将使用值为提交哈希值的标签构建图像。 该脚本还将检查当前图像的标签值,并在构建之前将其与当前提交哈希进行比较。

答案 1 :(得分:0)

每次都运行docker build。如果没有任何变化,则Docker缓存机制应该注意到这一点,并跳过Dockerfile重用缓存层的每一步,这非常快。 (最大的时间成本是,如果您要发送给Docker来构建大型构建树。)