1. 配置 Docker 服务的代理设置
需要修改 Docker 的守护进程配置文件,以便让它通过指定的 SOCKS5 代理进行连接。
在 Linux 上:
编辑 Docker 守护进程配置文件:
使用以下命令打开或创建/etc/systemd/system/docker.service.d/proxy.conf
文件:sudo mkdir -p /etc/systemd/system/docker.service.d sudo nano /etc/systemd/system/docker.service.d/proxy.conf
添加代理配置:
在文件中添加以下内容,设置 HTTP 和 HTTPS 代理:[Service] Environment="HTTP_PROXY=socks5://192.168.123.60:10800" Environment="HTTPS_PROXY=socks5://192.168.123.60:10800"
重新加载守护进程并重启 Docker:
执行以下命令以使更改生效:bash 复制代码 sudo systemctl daemon-reload sudo systemctl restart docker
一行代码:
sudo mkdir -p /etc/systemd/system/docker.service.d && echo -e "[Service]\nEnvironment=\"HTTP_PROXY=socks5://192.168.123.60:10800\"\nEnvironment=\"HTTPS_PROXY=socks5://192.168.123.60:10800\"" | sudo tee /etc/systemd/system/docker.service.d/proxy.conf && sudo systemctl daemon-reload && sudo systemctl restart docker
在 Windows 上:
编辑 Docker Daemon 配置文件:
打开C:\ProgramData\Docker\config\daemon.json
文件。如果文件不存在,可以新建一个。添加代理配置:
将以下内容添加到daemon.json
文件中:{ "proxies": { "default": { "httpProxy": "socks5://192.168.123.60:10800", "httpsProxy": "socks5://192.168.123.60:10800" } } }
重启 Docker 服务:
重启 Docker Desktop 或者执行以下命令:Restart-Service docker
2. 验证配置
配置完成后,可以运行 Docker 命令来确认是否使用了代理。通过拉取镜像或执行其他网络相关的 Docker 命令,检查是否正常工作。
3. 注意事项
- 如果 Docker 守护进程运行在没有代理支持的环境中(例如一些自定义配置),你可能需要使用其他工具来路由 Docker 的网络流量。
- 在 Docker 容器内部,环境变量可能不会继承此设置。你可能需要在 Dockerfile 或运行容器时显式设置代理环境变量。
完成这些步骤后,Docker 将通过设置的 SOCKS5 代理进行连接。
欢迎指出任何有错误或不够清晰的表达,可以在下面评论区评论。