Dockerregistry拔取错误

我有一个dockerregistry,目前正在运行。 我有两个不同的虚拟机主机docker。 一个我创build自己和手动安装docker。 另一个是由BOSH制作的。 现在,这两个虚拟机都能够将映像推送到我的私有registry中: <IP>:<PORT> 。 手动创build的虚拟机能够提取registry中存在的任何图像。 相比之下,BOSH虚拟机只能拉取它推起来的图像。

当拉图像时,我们得到像这样的输出

 <IP>:<PORT>/test/scratch:1: The image you are pulling has been verified. Important: image verification is a tech preview feature and should not be relied on to provide security. 

然而,当拉任何其他图像(我知道存在,可以拉),我得到的输出如下:

 docker pull <IP>:<PORT>/<IMAGE_PREFIX>/centos:6 6: Pulling from <IP>:<PORT>/<IMAGE_PREFIX>/centos f1b10cd84249: Pulling fs layer b9aeeaeb5e17: Pulling fs layer f577f0104d9f: Pulling fs layer 25026cb4e110: Pulling fs layer 7935ccc5687c: Pulling fs layer b65d7f315ddb: Pulling fs layer 0995c5f045e3: Pulling fs layer 8383060ffe2b: Pulling fs layer 4e532e3dd806: Pulling fs layer 13012e69774f: Pulling fs layer c0720f93f003: Pulling fs layer 1af9b43df076: Pulling fs layer 961ad276c59a: Download complete Pulling repository <IP>:<PORT>/<IMAGE_PREFIX>/centos FATA[0000] Error: image <IMAGE_PREFIX>/centos:6 not found 

BOSH虚拟机“无法find”图像是没有意义的,因为它清楚地看到了用来创build我想要的图像的图层。 但是我不知道这是否是一些奇怪的validation错误。

ps -ef | grep docker的输出 BOSH VM中的ps -ef | grep docker显示:

 docker --daemon --api-enable-cors=false --debug=false --group vcap --graph /var/vcap/store/docker/docker --host unix:///var/run/docker.sock --insecure-registry <IP>:<PORT> --bip 192.168.227.1/24 --icc=true --ip-forward=true --iptables=true --iptables=true --pidfile /var/vcap/sys/run/docker/docker.pid --selinux-enabled=false --host tcp://127.0.0.1:4243 

我手动创build的虚拟机的输出显示:

 /usr/bin/docker -d --bip 192.168.227.1/24 --insecure-registry <IP>:<PORT> 

这是我的错误。 registry包含使用docker 1.7.0构build的映像,但是我的BOSH VM已经安装了docker 1.5.0。 因此,BOSH虚拟机无法识别图像格式(我相信)registry包含,因此报告了一个未find我想要的图像错误。 升级docker二进制文件和spec文件,然后重新部署新版本修复了错误。