一句话结论
Docker 守护进程运行在独立的网络命名空间里,通常不会自动使用系统代理或 TUN,需要单独在 Docker 的服务配置里指定代理地址。
配置示例
# /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" 以上为通用 YAML 语法示例,用于说明配置结构,非某家服务商专属订阅内容。
要注意的点
- 修改后需要 systemctl daemon-reload 并重启 docker 服务才会生效
- Windows / macOS 上的 Docker Desktop 在其设置面板里有独立的代理选项,无需改配置文件