🔧 1. 确认你的代理本地端口

假设你本地代理端口是:

  • HTTP(S) 代理地址:127.0.0.1:7890(Clash 默认)

  • 或 SOCKS5 代理地址:127.0.0.1:1080(Shadowsocks 默认)

我们以下以 HTTP 代理为例。

🛠️ 2. 创建 Docker 的代理配置文件

sudo mkdir -p /etc/systemd/system/docker.service.d
sudo nano /etc/systemd/system/docker.service.d/http-proxy.conf

内容如下

[Service]
Environment="HTTP_PROXY=http://127.0.0.1:7890"
Environment="HTTPS_PROXY=http://127.0.0.1:7890"
Environment="NO_PROXY=localhost,127.0.0.1,::1"

🔄 3. 重新加载并重启 Docker 服务

sudo systemctl daemon-reexec
sudo systemctl daemon-reload
sudo systemctl restart docker

✅ 4. 验证代理是否生效

  • 查看代理环境变量是否生效:
systemctl show --property=Environment docker
  • 查看 Docker 拉镜像报错日志:
journalctl -u docker.service -n 100 --no-pager