有没有办法从私人registry中拉出图像并切断url?
我有一些私人的Dockerregistry: http ://some-registry-somewhere.com: 5000 。
当我需要运行我的组合configuration时,我需要拉一个目标图像。
$ docker pull some-registry-somewhere.com:5000/target/image:tag1
在docker-compose.yml
文件中,我必须设置相同的完整的URLpath,因为有拉图像some-registry-somewhere.com:5000/target/image:tag1
。
只有图像名称的图像我们可以标记它:
$ docker tag some-registry-somewhere.com:5000/target/image:tag1 target/image:tag1
但有没有办法通过Docker自动剪切Dockerregistry的URL?
没有这样的方式,因为API规范。 图像名称不仅仅是标签,它还标识了docker引擎,应该使用哪个registry来推送和拖动这个图像。
而第一个some-registry-somewhere.com:5000/target/image:tag1
是image target/image:tag1
,它位于some-registry-somewhere.com:5000
。
第二个target/image:tag1
是换句话说,位于官方存储库中的image, docker.io/target/image:tag1
target/image:tag1
。
事实上,在大多数情况下,它们可能会有所不同。
其中一种方式不好,实际上,因为可能会混淆(再次参考存储库) ,就是使用&&
:
docker pull some-registry-somewhere.com:5000/target/image:tag1 && docker tag some-registry-somewhere.com:5000/target/image:tag1 target/image:tag1