一、拉取registry
docker pull registry:2
二、运行容器
docker run -d -p 5000:5000 -v /myregistry:/var/lib/registry registry:2
-d 是后台启动容器。
-p 将容器的 5000 端口映射到 Host 的 5000 端口。5000 是 registry 服务端口。
-v 将容器 /var/lib/registry 目录映射到 Host 的 /myregistry,用于存放镜像数据。
上传到本地的镜像保存在/myregistry/docker/registry/v2/repositories/ 下面
打开浏览器,访问172.25.10.242:5000/v2/_catalog,可以查看到{"repositories": []} 表示现在仓库中,没有镜像images
三、重命名镜像,添加新的tag,使之与registry 相匹配
docker tag registry:2 172.25.10.242:5000/registry-test
镜像名称由 repository 和 tag 两部分组成,默认为latest。可以在docker build 时用格式image:tag指定,
而 repository 的完整格式为:[registry-host]:[port]/[username]/xxx
四、上传镜像到仓库中
docker push 172.25.10.242:5000/registry-test
如果出现:
可能是因为我们启动的registry服务不是安全可信赖的 ,我们需要在/etc/docker下,创建daemon.json文件,写入:
{ "insecure-registries":["172.25.10.242:5000"]}
重启docker:
systemctl restart docker.service
重新启动registry:
docker start 80b980475244
再push镜像:
查看仓库:
五、删除下载的镜像,从本地镜像下载
1)、删除镜像:
docker rmi 172.25.10.242:5000/registry-test
2)、本地仓库下载镜像:
docker pull 172.25.10.242:5000/registry-test