如何从Ubuntu 16.04上的docker内部通过Oracle VM(5.2.4)和Windows 7上的cntlm代理进行Internet http调用?
已配置代理(IP 192.168.56.1,VM主机)。在Ubuntus Firefox中或从命令行wget中成功访问Internet。
Docker CE(17.12.0-ce)配置为使用代理ip:/etc/systemd/system/docker.service.d/http-proxy.conf
[Service]
Environment="HTTP_PROXY=http://192.168.56.1:3128/"
Environment="HTTPS_PROXY=http://192.168.56.1:3128/"
所有的码头图像我都能成功。
只有docker容器内的wget或任何安装调用失败。
很多帮助页面后来,我不知道更多。我的尝试:
docker run --name test --network host -e "https_proxy=https://192.168.56.101:3128" -it alpine:latest wget https://www.web.de
wget: bad address 'www.web.de'
docker run --name test --dns 8.8.8.8 -e "https_proxy=https://192.168.56.101:3128" -it alpine:latest wget https://www.web.de
wget: bad address 'www.web.de'
docker run --name test -e "https_proxy=https://192.168.56.101:3128" -it alpine:latest wget https://www.web.de
wget: bad address 'www.web.de'
docker run --name test --network host --dns 8.8.8.8 -e "https_proxy=https://192.168.56.101:3128" -it alpine:latest wget https://www.web.de
wget: bad address 'www.web.de'
所有打印的调用也使用“http”而没有代理环境。
对我来说另一个想法?
对于Docker与CNTLM一起工作,设置非常重要
Gateway yes
在CNTLM-Config中。
我直接在VM上运行CNTLM并将容器中的所有代理设置为qazxsw poi。
为了完整起见,请在docker run中设置所有Proxy-Env:
http://172.17.0.1:3128