在/etc/default/docker设置了http_proxy之后,就无法使用私有registry


问题描述

环境
Server Version: 1.9
Kernel Version: 3.13.0-24-generic
Operating System: Ubuntu 14.04 LTS

由于公司信息安全的问题,要想访问外网必须走代理,即配置http_proxy,配置如下
/etc/default/docker增加
export http_proxy=proxy.aaa.com

现象

在配置完代理之后,restart daemon,再从我自己搭建的内网私有registry来push的时候,提示:
unable to ping registry endpoint https://myregistry.com/v0/
v2 ping attempt failed with error: Get https://myregistry.om/v2/: x509: certificate signed by unknown authority
v1 ping attempt failed with error: Get https://myregistry.com/v1/_ping: x509: certificate signed by unknown authority

注释掉export http_proxy,restart daemon,再次push就没问题。

尝试1

猜测是代理的问题,于是在/etc/default/docker添加了no_proxy,然而还是不起作用。
是不是docker不识别no_proxy??

尝试2

猜测是我哪里配置的不对,再参考一下官网的文档,
(https://docs.docker.com/engine ... -proxy)
取消/etc/default/docker中的http_proxy,再配置/etc/systemd/system/docker.service.d/http-proxy.conf的http_proxy和no_proxy
再次重启docker,却发现连从外网pull都显示timeout,是不是docker不读取/etc/systemd/system/docker.service.d/http-proxy.conf
已邀请:

熊大师

赞同来自: yingz


问题解决,参考(https://github.com/docker/docker/issues/9145)

原来是我写的no_proxy不对,不能使用*.xxx.com的这种用法。。。好奇怪啊

要回复问题请先登录注册