docker拉镜像失败终极解决方案
作者:ARMFUN
本文主要介绍了docker拉镜像失败终极解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
1、 配置服务器需要走socks5代理
1. 配置 Docker 服务代理(推荐)
创建目录(如果不存在):
sudo mkdir -p /etc/systemd/system/docker.service.d
创建或编辑代理配置文件:
sudo nano /etc/systemd/system/docker.service.d/proxy.conf
写入(假设你的 SOCKS5 代理是 127.0.0.1:1080):
[Service] Environment="HTTP_PROXY=socks5h://127.0.0.1:1080" Environment="HTTPS_PROXY=socks5h://127.0.0.1:1080" Environment="NO_PROXY=localhost,127.0.0.1"
注意 socks5h:// 可以让 DNS 请求也通过代理,防止解析失败。
重载 systemd 并重启 Docker:
sudo systemctl daemon-reload sudo systemctl restart docker
2、临时使用环境变量(快速测试)
在命令前加代理环境变量:
export HTTP_PROXY=socks5h://127.0.0.1:1080 export HTTPS_PROXY=socks5h://127.0.0.1:1080 sudo docker pull lvxj11/erpnext:latest
3、其他常见原因
- 本地 DNS 解析失败 →
socks5h可以解决 - 防火墙 / NAT 屏蔽 → 确认能 ping registry-1.docker.io
- Docker 版本太老 → 升级到最新稳定版
- 网络慢 → 增加超时时间(不常用)
4、验证代理是否生效
sudo docker info | grep -i proxy
输出类似:
HTTP Proxy: socks5h://127.0.0.1:1080 HTTPS Proxy: socks5h://127.0.0.1:1080
表示配置生效。
到此这篇关于docker拉镜像失败终极解决方案的文章就介绍到这了,更多相关docker拉镜像失败内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
