步骤 1:使用代理配置运行注册表版本 2+
你需要运行 dockerregistryproxy https://docs.docker.com/registry/configuration/#proxy配置。
为了得到一个初始config.yml
:
docker run -it --rm --entrypoint cat registry:2 /etc/docker/registry/config.yml > `pwd`/config.yml
添加以下内容到config.yml
:
proxy:
remoteurl: https://registry-1.docker.io
然后启动 docker 注册表config.yml
:
docker run -d --restart=always -p 5000:5000 --name docker-registry-proxy -v `pwd`/config.yml:/etc/docker/registry/config.yml registry:2
Step2:在客户端配置Docker Daemon
If you use Docker for Mac (not Docker toolbox or boot2docker), just add http://<proxy-ip>:5000
to mirrors section under Advanced tab:
重新启动 Mac 版 Docker。
否则,您需要运行 docker daemon--registry-mirror=http://<proxy_ip>:5000
,通过在客户端或 Docker Toolbox VM 上执行以下操作:
docker --registry-mirror=https://<my-docker-mirror-host> daemon
步骤 3:验证代理是否正常工作:
尝试拉取您还没有的图像:
docker pull nginx
然后验证代理目录是否具有新映像:
curl https://<proxy_ip>:5000/v2/_catalog
它应该返回一些内容,包括您刚刚提取的图像。
"repositories":["library/nginx"]}