使用CNTLM可以自动处理代理问题。它允许我们在没有任何凭据的情况下指定IP地址,因此安全性更好,每当我们更改密码时,我们只需要在一个地方更改即可。我们还可以指定不应被代理的URL。
自18.03版Docker起,有一个特殊的DNS名称:host.docker.internal
。这允许从Docker容器连接到主机。现在,当我们在cntlm.ini中设置我们的CNTLM代理以便它监听0.0.0.0:3128
时:
Listen 0.0.0.0:3128
然后我们可以在Docker设置中使用host.docker.internal:3128
地址指定代理,该地址将被转换为我们机器的相应和当前本地地址。
您可以设置两个环境变量 http_proxy 和 https_proxy
http_proxy 的值为 http://username:password@proxyIp:proxyport
例如,在我的情况下,它是 http://venkat_krish:password@something.ad.somthing.com:80
您可以将同样的方式用于 https 代理
注意:
如果用户名或密码中含有除 _ & . 以外的特殊字符,则需要对 URL 进行编码。请访问此链接进行 URL 编码 https://grox.net/utils/encoding.html
例如,如果您的密码是 abc@123,则应编写为 abc%40123