docker配置代理
为Docker守护进程配置代理
- 创建或编辑 Docker 的服务配置文件:
1
2sudo mkdir -p /etc/systemd/system/docker.service.d
sudo nano /etc/systemd/system/docker.service.d/http-proxy.conf - 添加以下内容(根据你的代理设置修改):
1
2
3
4[Service]
Environment="HTTP_PROXY=http://192.168.100.254:10809"
Environment="HTTPS_PROXY=http://192.168.100.254:10809"
Environment="NO_PROXY=localhost,127.0.0.1,docker-registry.example.com" - 重新加载配置并重启 Docker
1
2sudo systemctl daemon-reload
sudo systemctl restart docker
为单个容器配置代理
如果你只想为某个容器配置代理,可以在运行容器时通过环境变量设置代理。
使用 -e 参数设置环境变量
1 | docker run -e HTTP_PROXY=http://proxy.example.com:port \ |
在Dockerfile中配置代理
如果你希望在构建镜像时使用代理,可以在 Dockerfile 中设置环境变量。
1 | FROM ubuntu:latest |
使用 docker-compose配置代理
如果你使用 docker-compose,可以在 docker-compose.yml 文件中为服务配置代理。
1 | version: '3' |
注意事项
- NO_PROXY:用于指定不需要通过代理访问的地址(如本地服务或内部网络)。
- 代理的地址和端口需要根据你的实际环境填写。
- 如果代理需要认证,可以在代理地址中包含用户名和密码,例如:
http://username:password@proxy.example.com:port。