为了满足企业或组织内部分享镜像,官方在Github上有一个项目docker-registry, 专门用于自建Docker的私有镜像库。镜像管理是Docker的核心,为了保证镜像数据的可靠、可用和安全,docker-registry现在支持镜像数据存储在S3、GCS等云存储上。

1、registry镜像下载

首先从国内的镜像库下载registry镜像,因为国外镜像库下载太™慢了。这里我建议选择阿里的docker镜像库,在本地服务器上安装好docker后执行命令:

http://blog.csdn.net/wangtaoking1/article/details/44180901/

http://blog.csdn.net/fgf00/article/details/52040492

仓库软件包 docker-registry 已经被 docker-distribution 取代

启动docker-distribution服务

yum -y  install docker-distribution

systemctl enable docker-distribution

systemctl start docker-distribution

查看通讯端口5000

[root@test01 ~]# netstat -lnpt

Active Internet connections (only servers)

Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name   

tcp6       0      0 :::5000                 :::*                    LISTEN      64987/registry

如果要上传镜像到仓库和从仓库下载镜像到本地,必须在节点配置文件添加仓库地址。

vim /etc/docker/daemon.json

{

"insecure-registries": ["192.168.10.7:666"],"registry-mirrors": ["https://of4n3bvy.mirror.aliyuncs.com"]

}

或者

vim  /etc/sysconfig/docker

OPTIONS='--insecure-registry 10.10.7.30:5000'

ADD_REGISTRY='--add-registry 10.10.7.30:5000'

加上后,search镜像,私有仓库和docker hub上都会显示;不加搜索私有仓库,需要命令中指定私有仓库ip

重启服务

systemctl restart docker

客户端上传镜像

docker push 192.168.20.199:5000/haha

上传的镜像放在 cd  /var/lib/registry/docker/registry/v2/repositories