- 重载 …
- 重载 systemd 并重启 Docker
sudo systemctl daemon-reload
sudo systemctl restart docker
Alpine Linux
Alpine Linux 常用作轻量化容器系统,由于几乎没有资源占用,非常适合跑 docker。
docker hub 代理
| 操作 | 命令 |
|---|---|
| 编辑配置 | nano /etc/docker/daemon.json |
| 重启服务 | rc-service docker restart |
| 验证配置 | docker info | grep -i proxy |
- 编辑 Docker 配置文件:
sudo nano /etc/docker/daemon.json
- 添加以下内容(无认证):
{
"proxies": {
"http-proxy": "http://[proxy_ip]:7890",
"https-proxy": "http://[proxy_ip]:7890",
"no-proxy": "localhost,127.0.0.1"
}
}
- 重启 Docker 服务(Alpine 使用 OpenRC):
sudo rc-service docker restart
验证配置是否生效:
docker info | grep -i proxy
输出中应包含:
HTTP Proxy: http://[proxy_ip]:7890
HTTPS Proxy: http://[proxy_ip]:7890
No Proxy: localhost,127.0.0.1
容器运行时代理
后续部分与 docker 本身有关,与发行版无关。
- 临时运行容器时指定代理:
docker run -e HTTP_PROXY="http://[proxy_ip]:7890" \
-e HTTPS_PROXY="http://[proxy_ip]:7890" \
-e NO_PROXY="localhost,127.0.0.1" \
your-image
- 持久化配置
编辑(或创建)文件 ~/.docker/config.json:
vim ~/.docker/config.json
添加以下内容:
{
"proxies": {
"default": {
"httpProxy": "http://[proxy_ip]:7890",
"httpsProxy": "http://[proxy_ip]:7890",
"noProxy": "localhost,127.0.0.1"
}
}
}
构建镜像时代理
如果你需要在构建镜像时使用代理,可以这样:
docker build --build-arg HTTP_PROXY="http://[proxy_ip]:7890" \
--build-arg HTTPS_PROXY="http://[proxy_ip]:7890" \
-t your-image .