一 什么是仓库
Docker 仓库是用来包含镜像的位置,Docker提供一个注册服
务器(Register)来保存多个仓库,每个仓库又可以包含多个
具备不同tag的镜像。
Docker运行中使用的默认仓库是 Docker Hub 公共仓库。
二 Docker Hub
docker hub是docker公司维护的公共仓库,用户可以免费使用,也可以
购买私有仓库。
首先在https://cloud.docker.com/网站注册一个账号
在docker主机上登录
docker hub为了区分不同用户的同名镜像,要求镜像的格式是:
[username]/xxx.tag
三 搭建私有仓库
docker hub虽然方便,但是还是有限制
需要internet连接,速度慢
所有人都可以访问
由于安全原因企业不允许将镜像放到外网
好消息是docker公司已经将registry开源,我们可以快速构建企
业私有仓库
Registry
Docker Registry有三个角色,分别是index、registry和registry
client。
index
负责并维护有关用户帐户、镜像的校验以及公共命名空间的信息。
Web UI
元数据存储
认证服务
符号化registry
是镜像和图表的仓库,它不具有本地数据库以及不提供用户认证,
通过Index Auth service的Token的方式进行认证。
Registry Client
Docker充当registry客户端来维护推送和拉取,以及客户端的授权。
1.打包
docker images
docker save rhel7:v4 -o demotar 仓库打包
du -h demo.tar
docker rmi rhel7:v4
docker load -i demo.tar
2.删除逻辑卷缓存
docker volume ls
docker volume prune
docker volume ls
3.registry:late
docker history registry:latest
docker run -d --name registry -v /opt/registry://var/lib/registry -p 5000:5000 registry
docker images
docker tag registry:latest localhost:5000/registry:latest
docker images
docker push localhost:5000/registry
curl localhost:5000/v2/_catalog
添加标签tag
运行