【发布时间】:2016-05-19 22:29:03
【问题描述】:
在 docker 容器中,我正在运行
# openssl s_client -connect rubygems.org:443 -state -nbio 2>&1 | grep "^SSL"
SSL_connect:before/connect initialization
SSL_connect:SSLv2/v3 write client hello A
SSL_connect:error in SSLv2/v3 read server hello A
这就是我的全部
我无法从 docker 容器中连接到任何 https 站点。容器在 openstack vm 上运行。 vm 可以通过 https 连接。
有什么建议吗?
更新
root@ce239554761d:/# curl -vv https://google.com
* Rebuilt URL to: https://google.com/
* Hostname was NOT found in DNS cache
* Trying 216.58.217.46...
* Connected to google.com (216.58.217.46) port 443 (#0)
* successfully set certificate verify locations:
* CAfile: none
CApath: /etc/ssl/certs
* SSLv3, TLS handshake, Client hello (1):
然后就挂了。
另外,我现在正在获得间歇性的成功。
健全性检查:
更改 docker ips 并不能解决问题
docker 容器在我的本地机器上工作
docker 容器在其他云上工作
Docker 1.10.0 在虚拟机中不起作用
Docker 1.9.1 在虚拟机中运行
【问题讨论】:
-
如果您通过上面的相关链接进行解析,您的 docker 发行版中缺少某些内容。 ca证书可能吗?
-
@Eli 这不是 rubygems 特定的问题。我的容器都不能访问任何 https 站点。 @user2105103,我安装了 ca 证书,
apt-get update挂起 -
如果
apt-get update挂起,则可能是 docker 主机上的 MTU 存在问题。尝试将 MTU 设置为较低的值。 -
我们遇到了同样的问题,这似乎是 OpenStack 中的一个棘手错误。我在那里提交了一个错误:bugs.launchpad.net/neutron/+bug/1595762
标签: ssl networking https docker openstack