Docker无法从openshift访问注册表

时间:2016-02-19 13:42:00

标签: docker openshift rhel

这是我的整个情景。

我有一个RHEL 7.1 vmware映像,公司代理配置正确,访问http或https的内容正常工作。

安装了docker-engine,并将HTTP_PROXY设置添加到/etc/systemd/system/docker.service.d/http-proxy.conf。我可以通过执行以下命令验证代理设置是否已被选中:

sudo systemctl show docker --property Environment

将打印:

Environment=HTTP_PROXY=http://proxy.mycompany.com:myport/当然有实际价值。

拉动和运行泊坞窗图像可以通过这种方式正常工作。

目标是使用 openshift-origin 的二进制分发。我下载了二进制文件,并开始按照github上的演练页面设置内容:

  

https://github.com/openshift/origin/blob/master/examples/sample-app/README.md

启动openshift似乎可以正常工作: *通过openshift cli登录 *创建一个新项目 *甚至访问Web控制台

但是当我尝试在项目中创建应用程序时(也通过cli):

oc new-app centos/ruby-22-centos7~https://github.com/openshift/ruby-hello-world.git

失败了:

error: can't look up Docker image "centos/ruby-22-centos7": Internal error occurred: Get https://registry-1.docker.io/v2/: dial tcp 52.71.246.213:443: connection refused

我可以通过VM上的浏览器或通过WGET访问(无需身份验证)此端点。

因此我相信DOCKER无法获取代理设置。经过一些搜索后,我也担心是否缺少IPTABLES设置。参考:

  

https://docs.docker.com/v1.7/articles/networking/

但我不知道我是否应该使用IPTABLES设置,不应该让Docker自己解决这个问题吗?

1 个答案:

答案 0 :(得分:1)

检查您的HTTPS_PROXY环境属性​​。