概述
国内拉取 ghcr/gcr/dockerhub/k8s 等的镜像比较困难,有几种方法可以尝试:
镜像加速
docker proxy提供多平台容器镜像代理服务,支持 Docker Hub, GitHub, Google, k8s, Quay 等镜像仓库。有两种使用方法:
- 修改 daemon.json 中的配置。缺点是只能支持 dockerHub。
- 替换 image 地址前缀。缺点是有些使用场景(一些自动化脚本)并不能进行如此修改。
总体来说,这种方法适合场景:
- 临时命令行 pull image。
- 只使用 dockerHub
配置 docker daemon
另外一种方法就是通过 systemd 为 docker damon 配置代理。官方说明。
sudo mkdir /etc/systemd/system/docker.service.d
sudo vim /etc/systemd/system/docker.service.d/http-proxy.conf
http-proxy.conf 内容:
[Service]
Environment="HTTP_PROXY=http://proxy.example.com:3128"
Environment="HTTPS_PROXY=https://proxy.example.com:3129"
Environment="NO_PROXY=localhost,127.0.0.1"
重启服务:
sudo systemctl daemon-reload
sudo systemctl restart docker
确认修改:
sudo systemctl show --property=Environment docker
Environment=HTTP_PROXY=http://proxy.example.com:3128 HTTPS_PROXY=https://proxy.example.com:3129 NO_PROXY=localhost,127.0.0.1
containerd 也可以用同样的方法。
评论