docker私有仓库
摘要
Docker容器应用的开发和运行离不开可靠的镜像管理,虽然Docker官方也提供了公共的镜像仓库,但是从安全和效率等方面考虑,部署我们私有环境内的Registry也是非常必要的。Harbor是由VMware公司开源的企业级的Docker Registry管理项目,它包括权限管理(RBAC)、LDAP、日志审核、管理界面、自我注册、镜像复制和中文支持等功能。
优点
- 可以节省出口带宽,下载docker镜像不需要到docker官方仓库下载,直接在本地私有仓库下载。
- 在生产环境或企业内部私有仓库,方便各部门使用,服务器管理更统一。服务器为安全不需要都开通外网
安装部署
下载镜像
[root@server2 ~]# docker pull registry
[root@server2 ~]# vi /etc/docker/daemon.json
{
"insecure-registries": ["20.0.0.13:5000"],
"registry-mirrors": ["https://1pkjgh13.mirror.aliyuncs.com"]
}
[root@server2 ~]# systemctl restart docker
[root@server2 ~]# docker images
创建容器
[root@server2 ~]# docker create -it registry /bin/bash
[root@server2 ~]# docker ps -a
[root@server2 ~]# docker start d85d512c60ad #启动容器
[root@server2 ~]# docker ps -a
# 显示状态为异常
自动创建挂载点
宿主机的/data/registry自动创建挂载容器中的/tmp/registry,实现共享
[root@server2 ~]# ls /
bin dev home lib64 mnt proc run srv tmp var
boot etc lib media opt root sbin sys usr
[root@server2 ~]# docker run -d -p 5000:5000 -v /data/registry:/tmp/registry registry
e8eb415f5db6dff97184a782e094d23782cec513d1452409498b6ed9db41d797
查看仓库内容
[root@server2 ~]# curl -XGET http://20.0.0.14:5000/v2/_catalog
更改标记
[root@server2 ~]# docker images
[root@server2 ~]# docker tag registry:latest 20.0.0.14:5000/registry
[root@server2 ~]# docker images
上传
[root@server2 ~]# docker images
[root@server2 ~]# docker push 20.0.0.14:5000/registry
下载
[root@server2 ~]# docker images
[root@server2 ~]# docker pull 20.0.0.14:5000/registry