故事前因

我手上有2台腾讯云的服务器用作WEB服务器,但是遇到一个问题,A服务器的Docker可以拉取到镜像(中途也失败过好几次),B服务器一直拉取失败。我就尝试在B服务器调整Docker的国内镜像地址,很遗憾,一个完整的镜像在国内镜像竟然无法整个拉取下来,非常的离谱。于是我就尝试在Linux 使用VPN。结配置好了,proxychain在Docker似乎也不生效。但是proxychain 使用curl www.google.com 正常。说明Docker并没有老老实实走外部代理。于是我尝试使用Docker使用代理以便于解决问题。当然这一步的前提也是建立在Linux使用VPN的。

前置知识

Docker开启代理,你得有代理,本站贴心的奉上教程:https://www.zanglikun.com/17437.html

Docker 开启代理

修改配置文件

编辑这个文件,如果没有相关文件,自己创建文件夹、最终要创建出此文件

-- 建议先确保有文件夹
mkdir /etc/systemd/system/docker.service.d
vim  /etc/systemd/system/docker.service.d/proxy.conf

填入如下内容

[Service]
Environment="HTTP_PROXY=http://127.0.0.1:7890"
Environment="HTTPS_PROXY=http://127.0.0.1:7890"

重启Docker

sudo systemctl daemon-reload && 
sudo systemctl restart docker

检查Docker有没有使用VPN

systemctl show --property=Environment docker

出现

Environment=HTTP_PROXY=http://127.0.0.1:7890 HTTPS_PROXY=http://127.0.0.1:7890

此时Docker就已经自动实现代理喽。后续拉取镜像不需要追加参数,直接使用即可哦!

特殊说明:
上述文章均是作者实际操作后产出。烦请各位,请勿直接盗用!转载记得标注原文链接:www.zanglikun.com
第三方平台不会及时更新本文最新内容。如果发现本文资料不全,可访问本人的Java博客搜索:标题关键字。以获取最新全部资料 ❤