我在使用Ubuntu 12.04和Docker 1.4.1时遇到了相同的问题。以下是我的解决方案:
$ sudo docker push "[host:ip:v6:addr:ess:is:here]:5000/myImage"
FATA[0002] Error: Invalid registry endpoint https://[host:ip:v6:addr:ess:is:here]:5000/v1/: Get https://[host:ip:v6:addr:ess:is:here]:5000/v1/_ping: EOF. If this private registry supports only HTTP or HTTPS with an unknown CA certificate, please add `--insecure-registry [host:ip:v6:addr:ess:is:here]:5000` to the daemon's arguments. In the case of HTTPS, if you have access to the registry's CA certificate, no need for the flag; simply place the CA certificate at /etc/docker/certs.d/[host:ip:v6:addr:ess:is:here]:5000/ca.crt
所以,我遇到了一个错误。
$ ps axwww | grep /usr/bin/docker
14655 ? Ssl 2:06 /usr/bin/docker -d
14869 pts/0 S+ 0:00 grep /usr/bin/docker
请注意,/usr/bin/docker 没有额外的参数。
$ echo 'DOCKER_OPTS="--insecure-registry [host:ip:v6:addr:ess:is:here]:5000"' | sudo tee -a /etc/default/docker
DOCKER_OPTS="--insecure-registry [host:ip:v6:addr:ess:is:here]:5000"
$ sudo service docker restart
docker stop/waiting
docker start/running, process 15615
让我们检查参数是否出现:
$ ps axwww | grep /usr/bin/docker
15615 ? Ssl 0:00 /usr/bin/docker -d --insecure-registry [host:ip:v6:addr:ess:is:here]:5000
15663 pts/0 S+ 0:00 grep /usr/bin/docker
是的,他们确实会。再试一次:
$ sudo docker push "[host:ip:v6:addr:ess:is:here]:5000/myImage"
The push refers to a repository [[host:ip:v6:addr:ess:is:here]:5000/myImage] (len: 1)
Sending image list
Pushing repository [host:ip:v6:addr:ess:is:here]:5000/myImage (1 tags)
511136ea3c5a: Image successfully pushed
27d47432a69b: Pushing [================================================> ] 189.8 MB/197.2 MB 0
--insecure-registry=xx.xx.xx.xx
(不要忘记等号) - mbarthelemy