使用 Docker 代理可以在构建和运行容器时自动配置代理。以下是在 Docker 和 docker-compose 中设置代理的步骤:
- 设置 Docker 代理:
创建文件 /etc/systemd/system/docker.service.d/http-proxy.conf,包含以下内容:
[Service]
Environment="HTTP_PROXY=http://<proxy_host>:<proxy_port>/"
Environment="HTTPS_PROXY=http://<proxy_host>:<proxy_port>/"
Environment="NO_PROXY=localhost,127.0.0.1"
其中 <proxy_host> 和 <proxy_port> 是你的代理服务器的主机名和端口。
然后重新加载 Docker 服务并重新启动 Docker:
$ sudo systemctl daemon-reload
$ sudo systemctl restart docker.service
- 设置 Docker Compose 代理:
在 docker-compose.yml 文件中添加以下环境变量:
services:
my_service:
environment:
- http_proxy=http://<proxy_host>:<proxy_port>/
- https_proxy=http://<proxy_host>:<proxy_port>/
- no_proxy=localhost,127.0.0.1
同样,<proxy_host> 和 <proxy_port> 是你的代理服务器的主机名和端口。
- 设置 Dockerfile 代理:
在 Dockerfile 中添加以下行:
ENV http_proxy http://<proxy_host>:<proxy_port>/
ENV https_proxy http://<proxy_host>:<proxy_port>/
ENV no_proxy localhost,127.0.0.1
其中 <proxy_host> 和 <proxy_port> 是你的代理服务器的主机名和端口。
设置完成后,重新构建和运行容器即可。