我的 Docker 容器面临以下问题:当我尝试使用
进入容器时docker exec -it container-id /bin/bash
Docker(我假设它是 Docker)提示以下消息:
proxy: unknown scheme: http
我已经将其追溯到主机上设置的以下环境变量,因为我正在使用代理服务器访问网络:
ALL_PROXY=http://myproxy:8080
错误信息似乎来自于net/proxy.go
文件,可以找到here - 错误消息在文件的最后一行发出。为什么 http
在 Docker 案例中不是注册的 URL 方案?
只要我在主机上取消设置 ALL_PROXY
,我就可以毫无问题地进入容器。
环境:
- Mac OS X v10.11.5
- Docker v1.11.1
- Docker-Machine v0.7.0
知道如何解决这个问题(除了每次都取消设置变量)吗?
最佳答案
我在使用 docker 1.11.2 时遇到了同样的问题。我相信错误来自方法 FromURL .
检查相关提交后https://github.com/docker/docker/commit/16effc66c028a7800096ed92174ca4bceba229ad ,事实证明,从 v1.11.0-rc1 到 v1.12.0-rc4 都包含此提交。
所以我的解决方案是安装较低版本(我使用的是 v1.10.3)的 docker 工具箱,之后“docker run hello-world”就可以工作了。
关于go - Docker 提示 ALL_PROXY 环境变量为 "proxy: unknown scheme: http",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37573476/