从我的私人dockerregistry中拉出Docker而不指定主机
我使用dockerregistry来拉我自己的docker图像,但我想这样做,而不需要指定主机。 意思是:而不是写作:
docker pull <host>:<port>/<dockerImage>
我想写:
docker pull <dockerImage>
首先它会尝试从我的私人registry中拉出泊坞窗,然后试图从公共dockerregistry中提取它。
可能吗?
我尝试将DOCKER_INDEX_URL
更改为[my_docker_registry_host]:[port]
,但不起作用。
不,我认为它还不支持(1.1.2写)。 我猜主要原因是
本地私人registry不是公共registry的镜像 ,因此逻辑不是如果在本地找不到,那么它就会被公开。 他们完全不同。
因此,如果我们设置自己的私人docker存储库,但保持相同的命名,它会搞砸。
当你做docker images
,你看到的ubuntu
,你怎么知道这是从您的本地私人registry或公众。
更新:添加一个示例
另外如果我们有一个Dockerfile
,把tomcatit用作tomcat7
的基础
FROM tomcat7
你怎么知道这个构build来自?
如果我们想对私人回购与公共回购之间的映射有严格的stream程或控制,这将是复杂的。
从技术上讲,这是可能的,但收益较less。 它放松了docker(社区)的力量
对于要求包的唯一名称的其他包系统也是类似的情况。
你可以修改或添加你的/etc/sysconfig/docker
ADD_REGISTRY='--add-registry 192.168.0.169:5000' INSECURE_REGISTRY='--insecure-registry 192.168.0.169:5000'
然后修改/etc/systemd/system/docker.service
或/usr/lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd --registry-mirror=http://192.168.0.169:5000
当你拉一个图像,docker将首先从你的私人registry,然后docker集线器,如果没有在您的私人registry.I正在工作CentOS 7docker1.12。