CentOS 6.7防火墙后面的Docker连接问题

时间:2015-10-28 20:06:51

标签: docker centos connection-timeout

请忽略链接和网址中不正确的空格。我没有发布>所需的声誉; 2个网址或2个链接。

我有一个新的CentOS 6.7安装,如下面的uname -a命令所示:

Linux 2.6.32-573.7.1.el6.x86_64#1 SMP Tue Sep 22 22:00:00 UTC 2015 x86_64 x86_64 x86_64 GNU / Linux

这台机器位于公司防火墙后面。

我已经安装了docker-io。版本信息是(docker version):

客户端版本:1.7.1 客户端API版本:1.19 Go version(client):go1.4.2 Git commit(client):786b29d / 1.7.1 OS / Arch(客户端):linux / amd64 服务器版本:1.7.1 服务器API版本:1.19 去版本(服务器):go1.4.2 Git commit(server):786b29d / 1.7.1 OS / Arch(服务器):linux / amd64

docker服务正在运行:

docker(pid 2593)正在运行......

我跑的时候 sudo docker pull hello-world 我收到错误: 获取https://index.docker.io/v1/repositories/library/hello-world/images:拨打tcp 54.165.23.153:443:连接超时

我跑的时候 sudo docker run hello-world 我得到一个类似的错误: 获取https://index.docker.io/v1/repositories/library/hello-world/images:拨打tcp 52.7.162.45:443:连接超时

我可以浏览到该网址 Firefox中的https://index.docker.io/v1/repositories/library/hello-world/images(在我输入代理的用户ID /密码之后)。我明白了:

[{" checksum":""," id":" 3f12c794407e68e515ba7f473a744e748ac8a827a2ea8b33855dec564238b2e5"},{" checksum&#34 ;:""," id":" 975b84d108f1024953937167506c2935a081c8c55ae9e9f7b7deee118605367f"},{" checksum":"",& #34; id":" 535020c3e8add9d6bb06e5ac15a261e73d9b213d62fb2c14d752b8e189b2b912"},{" checksum":""," id":" ["校验和"校验和"校验和& #34;:""," id":" 91c95931e552b11604fea91c2f537284149ec32fff0f700a4769cfd31d7696ae"},{" checksum":"" ," id":" e45a5af57b00862e5ef5782a9925979a02ba2b12dff832fd0991335f4a11e5c5"},{" checksum":""," id":&# 34; 31cbccb51277105ba3ae35ce33c22b69c9e3f1002e76e4c736a2e8ebff9d7b5d"},{&#3 4;校验和":""," id":" ef872312fe1bbc5e05aae626791a47ee9b032efa8f3bda39cc0be7b56bfe59b9"},{" checksum":"& #34;," id":" 7fa0dcdc88de9c8a856f648c1f8e0cf8141a505bbddb7ecc0c61f1ed5e086852"},{" checksum":""," id" :" bf16b6e27882c0790071c95326e0186eccd2b8ac2bd5ef34fecdbb332a90926e"},{" checksum":""," id":" 8f5550346e6173730dca712d1fc87e671ae04d5899d6c4290f7897c054b2318e"},{ "校验和":""," id":" f86750113cd23609d504342d39015d5c7f218935b8420dd43b79cd99f4f93960"},{" checksum":&#34 ;"," id":" 0a1b1cfaa9a2153fdabe163d562fe1321a5c1d1db3a59e0fac7c65f966bc38a9"},{" checksum":""," id&# 34;:" 511136ea3c5a64f264b78b5433614aec563103b4d4702f3ba7d4d2698e22c158"},{" checksum":""," id":" 2505d942a91db2045278f9d5c58067414d367c02506bbba96f0769a6ac6ad47b"} ,{"检查嗯":""," id":" 565a9d68a73f6706862bfe8409a7f659776d4d60a8d096eb4a3cbce6999cc2a1"}]

卷曲www.google.com并卷曲​​http://www.google.com正常工作。

当我跑步时: curl -v https://index.docker.io:443

我得到以下内容: *即将连接()到index.docker.io端口443(#0) *尝试54.165.23.153 ...连接超时 *尝试54.84.122.145 ...连接超时 *尝试52.7.162.45 ...连接超时 *无法连接到主机 *关闭连接#0 卷曲:(7)无法连接到主机

根据Stack Overflow上的另一篇文章,我已尝试在/ etc / default / docker文件中使用和不使用http_proxy和https_proxy信息的docker run和docker pull。最初,在docker-io安装之后没有可用的/ etc / default / docker文件。这没有用。 / etc / default / docker文件的内容如下所示: http_proxy = http:// proxyName:port https_proxy = http:// proxyName:port

我也尝试过(在/ etc / default / docker文件中): export http_proxy = http:// proxyName:port export https_proxy = http:// proxyName:port

我今天一整天都在谷歌搜索,试图解决这个问题并且没有取得任何进展。

1 个答案:

答案 0 :(得分:1)

您的问题是您的公司防火墙。这可能无法解决,因为您的公司要求您使用用户名和密码登录 - 您可以使用firefox下载图像,我想这是使用LDAP或其他任何方式为您协商代理。

您可以尝试在shell中设置http_proxy和https_proxy变量,这取决于代理

$ export http_proxy=http://server-ip:port/
$ export http_proxy=http://127.0.0.1:3128/
$ export http_proxy=http://proxy-server.mycorp.com:3128/

http://www.cyberciti.biz/faq/linux-unix-set-proxy-environment-variable/

您的公司很有可能最大限度地减少任何行为不端的代码进入其网络,因此您可能不应该绕过它并与您的IT部门交谈