Docker如何用上Clash代理
来源 https://blog.haohtml.com/archives/31298
通过直接设置 http_proxy 和 https_proxy 这两个环境变量是不可行的
- 设置docker服务代理
sudo mkdir -p /etc/systemd/system/docker.service.d/
sudo vim /etc/systemd/system/docker.service.d/http-proxy.conf
将以下内容写入 http-proxy.conf 文件
[Service]
Environment="HTTP_PROXY=http://127.0.0.1:7897"
Environment="HTTPS_PROXY=http://127.0.0.1:7897"
Environment="ALL_PROXY=socks5://127.0.0.1:7897"
Environment="NO_PROXY=localhost,127.0.0.1,docker-registry.example.com,.corp,.docker.io,.docker.com"
上面代理地址是本机开启的代理服务监听端口,如果代理服务在局域网内的其它机器上的话,需要更换为其 ip 地址和端口号。环境变量 NO_PROXY 表示不使用代理的域名或IP。
- 重启 docker 服务
systemctl daemon-reload
systemctl restart docker
- 验证
root@ubuntu:~# systemctl show --property=Environment docker
Environment=HTTP_PROXY=http://127.0.0.1:7890 HTTPS_PROXY=http://127.0.0.1:7890 ALL_PROXY=socks5://127.0.0.1:7890 NO_PROXY=localhost,127.0.0.1,docker-registry.example.com,.corp,.docker.io,.docker.com
Enjoy Reading This Article?
Here are some more articles you might like to read next: