我正在使用Docker容器在Jenkins中构建一个构建管道,我想构建一个图像,但前提是该图像不存在于Jenkins运行的同一台服务器上。我采用最简单,最优雅的方式做到这一点,但我很难想出任何东西。
答案 0 :(得分:3)
正如此question的答案中所述,您可以使用以下内容检查图像是否存在。
if [[ "$(docker images -q myimage:mytag 2> /dev/null)" == "" ]]; then
# do something
fi
答案 1 :(得分:0)
您可以从以下输出:
docker image ls
然后grep查找您打算构建的图像名称。
然而,如果你" build"詹金斯的形象,将创造一个新的"图像 - 即使预先存在的图像应该相同 - 你怎么知道?
Docker图像是模板 - 听起来你在不同的主机上重建图像?如果是这样,请考虑使用中央(私有)注册表并从可能需要该图像的各种主机中提取。