只有在Jenkins中不存在的情况下才能构build泊坞窗图像

我正在使用Docker容器在Jenkins中构build一个构buildpipe道,我想构build一个图像,但前提是该图像不在与Jenkins相同的服务器上。 我以最简单最优雅的方式来做这件事,但我正在努力想出任何东西。

正如在这个问题的答案中所述,您可以使用以下来检查图像是否存在。

if [[ "$(docker images -q myimage:mytag 2> /dev/null)" == "" ]]; then # do something fi 

你可以从下面输出:

 docker image ls 

然后grep你打算build立的图像名称。

但是,如果您在Jenkins中“构build”一幅图像,即使预先存在的图像应该是相同的,也会创build一个“新”图像 – 您怎么知道?

Docker的图像是模板 – 这听起来像你在不同的主机上重build图像? 如果是这样,考虑使用中央(私人)registry,并从可能需要该图像的各种主机拉。