docker push报错
batsh 2015-11-12 01:30:50 我搭建了一个docker私有仓库,
1、系统是centos6
2、通过nginx 代理,并增加了用户名和密码认证,还有ssl加密传输
3、docker仓库registry是安装在192.168.0.40上,并且nginx也是安装在这台主机上
nginx配置如下:
server {
listen 443;
server_name registry.info.cn;
ssl on;
ssl_certificate info.cn.crt;
ssl_certificate_key info.cn.key;
access_log logs/host.access.log main;
location / {
auth_basic "Security Zones";
auth_basic_user_file /usr/local/nginx/password;
proxy_pass http://192.168.0.40:5000;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
其中ca证书是花钱购买的,能正常使用。
在docker客户端通过
curl -X GET https://test:test@registry.info.cn/v1/search 能正确返回
docker login https://registry.info.cn 可以正常登录,能返回success
但是我push一个images到registry的时候就报错
[root@localhost /]# docker push registry.info.cn/centos7
The push refers to a repository [registry.info.cn/centos7] (len: 1)
Sending image list
Pushing repository registry.info.cn/centos7 (1 tags)
47d44cb6f252: Pushing
Failed to upload metadata: Put https://192.168.0.40:5000/v1/ima ... 8f92557f4d05a/json: EOF
我这里好奇的是,push的时候怎么又会解析出IP来访问了,https://192.168.0.40:5000这个肯定是会出错的,不知道原因?????