docker私有库搭建过程(Registry)

      我们知道可以使用hub.docker.com作为我们公共或者私有的registry。但由于服务器在国外的原因,网速会非常的慢。
所以我们在利用docker开发构建容器服务时,我们希望能够建立自己的私有registry,上传镜像值我们的私有
registry中心,然后在其他物理机上部署的时候,可以快速的pull,然后实现大规模的分发以及部署,提高效率。

1、安装并运行registry

安装:

  [root@iZm5e61wb7816uew9egnr2Z ~]  docker pull  docker.io/registry

运行:

   docker run -d -p 5000:5000 -v /opt/program/data/registry:/var/lib/registry docker.io/registry

-d后台运行

-p指定端口

-v把registry的镜像路径/var/lib/registry映射到本机的/opt/program/data/registry

检查5000端口

      netstat -an | grep 5000

[root@docker01 ~]# netstat -an | grep 5000

image.png

      telnet 127.0.0.1 5000成功。

image.png

2、添加tag标记

       docker tag : 标记本地镜像,将其归入某一仓库。

docker tag [OPTIONS] IMAGE[:TAG] [REGISTRYHOST/][USERNAME/]NAME[:TAG]

 如: 将镜像ubuntu:15.10标记为 runoob/ubuntu:v3 镜像。

     root@runoob:~# docker tag ubuntu:15.10 runoob/ubuntu:v3

image.png

      docker tag csphere/wordpress:4.2 172.31.228.145:5000/csphere/wordpress:0.0.1

image.png

3、上传镜像到本地私有仓库中:

          docker push 10.100.50.120:5000/busybox


开源Docker Registry的有很多的不足:

   用户与鉴权 : 可以基于htpasswd文件进行简单的用户管理,但是维护不便,也没有对外的API可供集成。

   缺少日志与审记 : 没有日志收集能力,也缺少审记。

   缺少图形化的管理界面;

   所以后续我们会采用Harbor 作为企业级的私有仓库作为镜像管理.