Docker安装部署Registry

一,部署Registry

  1. docker pull registry
  2. docker run -d -p 5000:5000 -v /myregistry:/var/lib/registry registry
    在这里插入图片描述

-d 是后台启动容器。

-p 将容器的 5000 端口映射到 Host 的 5000 端口。5000 是 registry 服务端口。

-v 将容器 /var/lib/registry 目录映射到 Host 的 /myregistry,用于存放镜像数据。

上传到本地的镜像保存在/myregistry/docker/registry/v2/repositories/ 下面

验证是否成功:
浏览器访问http://服务器IP:5000/v2/_catalog
{“repositories”: []} 表示现在仓库中,没有镜像images
在这里插入图片描述

上传本地仓库

添加tag:
docker tag gla.com/metadata-app 192.168.26.192:5000/gla-app-metada
在这里插入图片描述
上传到本地仓库中:
docker push 192.168.26.192:5000/gla-app-metadata
在这里插入图片描述
上传后可验证是否成功:curl 127.0.0.1:5000/v2/_catalog

问题排查:在push镜像的时候出现问题,可能是因为我们启动的registry服务不是安全可信赖的.这个时候我们需要修改docker的配置文件
配置https权限支持
vi /etc/docker/daemon.json
配置:“insecure-registries”:[“192.168.26.192:5000”]

{
  "hosts":["tcp://0.0.0.0:2375","unix:///var/run/docker.sock"],
 "insecure-registries":["192.168.26.192:5000"]
}

删除下载的镜像,从本地镜像下载。

docker rmi 192.168.26.192:5000/gla-app-metadata 删除镜像

docker pull 从本地镜像下载。

docker images 查看下载成功
在这里插入图片描述

删除容器里的镜像文件

进入 docker registry 容器中

docker exec -it registyr /bin/sh
删除 repo

rm -rf /var/lib/registry/docker/registry/v2/repositories/oldboy
清除掉 blob

registry garbage-collect /etc/docker/registry/config.yml

发布了223 篇原创文章 · 获赞 145 · 访问量 29万+

猜你喜欢

转载自blog.csdn.net/zzhuan_1/article/details/100098208