设置 Docker 使用宿主机代理

本文头图来源:Pixiv/Uroam@换乘

本文主要学习了:「执念分享」的「docker 容器内使用宿主机的代理配置」,感谢!

有的时候看到好项目想拉下来学习,或者直接白嫖。但咱们的网络环境不好。在本地用上手段之后发现容器内不生效。上网搜了一下找到解决方案,特此留作备用。

文档内容

In Docker 17.07 and higher, you can configure the Docker client to pass proxy information to containers automatically.

文档原文:Configure Docker to use a proxy server

动手实践

找一台国内服务器,然后确保你的宿主机上已经有一个可用的端口了,比如 7890。然后在 ~/.docker 创建文件 config.json ,粘贴下面的内容进去

{
"proxies":
{
   "default":
   {
     "httpProxy": "http://127.0.0.1:7890",
     "httpsProxy": "http://127.0.0.1:7890",
     "noProxy": "localhost"
   }
}
}

其中的 7890 端口为刚才准备好的端口(http)。

然后在启动 docker 容器的时候选择 host 模式,即在启动时的指令中加入 --net host 即可。