我无法让Docker Toolbox for Windows 10在公司代理服务器之后工作。
我无法让docker登录或docker运行,所以这就是我所做的调试工作。
我在虚拟机中创建了一个普通的ubuntu机器。
在我的主机上,我启动在端口8000上运行的简单服务器。
在ubuntu中:
$ curl 10.0.2.2:8000
$ [it retrieves the html being served]
$ curl www.google.com
$ curl (7) Failed to connect to www.google.com port 80: Connection refused
$ export http_proxy=http://my-proxy:3128
$ curl www.google.com
$ [302 HTTP response from google]
在boot2docker上:
$ curl 10.0.2.2:8000
$ [it retrieves the html being served]
$ curl www.google.com
$ curl (7) Failed to connect to www.google.com port 80: Connection refused
$ export http_proxy=http://my-proxy:3128
$ curl www.google.com
$ curl: (7) Failed to connect to my-proxy:3128: No route to host
这里发生了什么?
答案 0 :(得分:4)
好的,我终于解决了这个问题。
问题是公司代理与默认的docker VM网桥存在于同一子网中。 (即172.17.x.x)。
快速解决方法 - 您可以通过在docker VM中更改它来解决此问题。
$ docker-machine ssh mydockervm
$ ifconfig docker0 172.18.0.1 netmask 255.255.0.0
答案 1 :(得分:1)
我尝试了相同的问题,并使用@dwjohnston自己的答案来查找问题的原因。
在我的案例中,一个冲突的docker VM桥与旧的 docker-compose 的执行有关。
我解决了该问题:
$ docker network prune
为了清理网络连接...
奇怪的是,如果由compose启动的所有容器都已经被修剪,则桥仍被映射为事件。
注意:这似乎是一个“我有相同的问题”答案,但是给定的解决方案有所不同...不同...