给Docker Pull配置代理
本文最后更新于 2024-09-11,文章内容距离上一次更新已经过去了很久啦,可能已经过时了,请谨慎参考喵。
前情提要
在上一篇文章 docker pull
命令是由单独的守护程序来执行的,只配置简单的环境变量 http/s_proxy
是没有用的,需要给 Docker 单独设置
解决办法
首先创建配置文件的文件夹:
sudo mkdir -p /etc/systemd/system/docker.service.d
创建并编辑配置文件:
sudo vim /etc/systemd/system/docker.service.d/proxy.conf
输入配置:
[Service]
Environment="HTTP_PROXY=http://proxy.example.com:port"
Environment="HTTPS_PROXY=http://proxy.example.com:port"
Environment="NO_PROXY=localhost,127.0.0.1,.example.com"
需要保留
http://
前缀重启 docker 服务:
sudo systemctl restart docker
这样在执行 docker pull
的时候就可以直接走代理啦,如果还是不行的话,那么建议关闭 ipv6访问,强制使用ipv4试试。
另外一种方法
sudo vim /etc/docker/daemon.json
:
{
"registry-mirrors": [
"https://dockerhub.icu",
"https://docker.registry.cyou",
"https://docker-cf.registry.cyou",
"https://dockercf.jsdelivr.fyi",
"https://docker.jsdelivr.fyi",
"https://dockertest.jsdelivr.fyi",
"https://mirror.aliyuncs.com",
"https://dockerproxy.com",
"https://mirror.baidubce.com",
"https://docker.m.daocloud.io",
"https://docker.nju.edu.cn",
"https://docker.mirrors.sjtug.sjtu.edu.cn",
"https://docker.mirrors.ustc.edu.cn",
"https://mirror.iscas.ac.cn",
"https://docker.rainbond.cc"
],
"proxies": {
"http-proxy": "http://10.10.10.51:10809",
"https-proxy": "http://10.10.10.51:10809",
"no-proxy": "localhost,127.0.0.1"
}
}
重启 docker 服务: sudo systemctl restart docker
查看是否生效:docker info| grep Proxy
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 OrdisBlog
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果