说我有这个图像标签“ node:9.2”,如FROM node:9.2
...
在我实际尝试docker build ...
之前,是否可以使用API来查看是否存在带有标签“ node:9.2”的图像并且可以检索该图像?
答案 0 :(得分:2)
是的
docker image pull node:9.2
答案 1 :(得分:2)
仅当图像不存在时,此脚本才会构建。
针对V2的更新
function docker_tag_exists() {
curl --silent -f -lSL https://hub.docker.com/v2/repositories/$1/tags/$2 > /dev/null
}
对v2使用上述功能
#!/bin/bash
function docker_tag_exists() {
curl --silent -f -lSL https://index.docker.io/v1/repositories/$1/tags/$2 > /dev/null
}
if docker_tag_exists library/node 9.11.2-jessie; then
echo "Docker image exist,...."
echo "pulling existing docker..."
#so docker image exist pull the docker image
docker pull node:9.11.2-jessie
else
echo "Docker image not exist remotly...."
echo "Building docker image..."
#build docker image here with absoult or retlative path
docker build -t nodejs .
fi
从下面的链接进行了很少的修改。 如果注册表是私有的,请检查此链接With username and password
答案 2 :(得分:2)
如果为Docker守护程序设置了"experimental": enabled
,则可以使用以下命令:
泊坞清单检查节点:9.2