Docker私有仓库Registry的搭建验证

1. 关于docker Registrypython

官网Docker hubgit

Registrygithub上有两份代码:老代码库新代码库。老代码是采用python编写的,存在pullpush的性能问题,出到0.9.1版本以后就标志为deprecated,再也不继续开发。从2.0版本开始就到在新代码库进行开发,新代码库是采用go语言编写,修改了镜像id的生成算法、registry上镜像的保存结构,大大优化了pullpush镜像的效率。github

2. registry部署算法

运行一下命令获取Registry,目前最新版本为2.3.1docker

 

docker pull registry:2.3.1

 

启动一个容器浏览器

docker run -d -v /opt/registry:/var/lib/registry -p 5000:5000 --restart=always --name registry registry:2.3.1

Registry服务默认会将上传的镜像保存在容器的/var/lib/registry,咱们将主机的/opt/registry目录挂载到该目录,便可实现将镜像保存到主机的/opt/registry目录了。tcp

 运行docker ps看一下容器状况性能

 

CONTAINER ID        IMAGE                                         COMMAND                  CREATED             STATUS              PORTS                    NAMES
2355477e3c21        registry:2.3.1   "/bin/registry /etc/d"   3 hours ago         Up 3 hours          0.0.0.0:5000->5000/tcp   registry

 

说明咱们已经启动了registry服务,打开浏览器输入http://127.0.0.1:5000/v2,出现下面状况说明registry运行正常优化

 

3. 验证
将registry 的镜像push到local镜像库中,咱们要经过docker tag将该镜像标志为要推送到私有仓库
docker tag registry:2.3.1 127.0.0.1:5000/registry:2.3.1

而后查看如下本地的镜像,使用指令spa

docker images
REPOSITORY                              TAG                 IMAGE ID            CREATED             SIZE
127.0.0.1:5000/registry                 2.3.1               60e8332136e4        3 months ago        224.5 MB
registry                    2.3.1               60e8332136e4        3 months ago        224.5 MB

将镜像push到本地镜像库

docker push 127.0.0.1:5000/registry:2.3.1
相关文章
相关标签/搜索