四:docker的仓库
1、什么是仓库
仓库是集中存放镜像的地方。
注册服务器是存放仓库的具体服务器,每个服务器上可以有多个仓
库,而每个仓库下面有多个镜像。因此可以理解,仓库被认为是一个
具体的项目和目录。
仓库有分为公共仓库和私有仓库。
2、Docker Hub的登录:
可以通过执行如下指令进行登录注册:
sudo docker login
例如:
注意:如果注册失败可通过该链接进行注册https://hub.docker.com/
A、基本操作
用户无需登录查询官方仓库镜像:
sudo docker search
例如:
注意:可将上述镜像资源分为两类:
①、一种是centos这样的基础镜像,称为基础或根镜像。这些镜像由Docker公司创建。这样的镜像以单个单词作为名字。
②、还有一类像ansible/centos7-ansible这类镜像。一般由DockerHub的用户ansible创建并维护的。
B、可将查找出来的镜像下载到本地:
sudo docker pull [NAME]
C、本地镜像推送Docker Hub
sudo docker push
# 该步骤需要登录
D、自动创建
该功能对于需要经常升级镜像内程序来说十分方便。
要配置自动创建,需要如下步骤:
①、创建并登录Docker Hub,以及目标网站;*在目标网站中连接账户到Docker Hub。
②、在Docker Hub 中配置一个自动创建。
③、选取一个目标网站中的项目(需要含Dockerfile)和分支。
④、指定Dockerfile的位置,并提交创建。
#可以在Docker Hub的“自动创建”页面中跟踪每次创建的状态。
3、创建和使用私有仓库
①、使用registry 镜像创建私有仓库
通过如下命令简单搭建一套本地私有仓库环境:
sudo docker run -d -p 5000:5000 registry
# 这将自动下载并启动一个registry容器,创建本地私有仓库服务
目录:
默认情况下会将仓库创建在/tmp/registry
可以通过-v参数来将镜像文件存放在本地的指定路径
例如:
上面的例子就将镜像放到/opt/data/registry目录。
②、管理私有仓库镜像
A、查看已有镜像:
sudo docker images
B、查看本机IP将镜像标记为IP地址和名字
sudo docker tag IMAHE[:TAG] [REGISTRYHOST/] [USERNAME/] NAME [:TAG]
C、使用docker push上传标记的镜像
sudo docker push
D、用curl查看仓库
curl http://192.168.79.129/v1
通过curl 来查看镜像是否上传成功,当镜像出现{}里面有name等相关信息代表上传成功。
此时任意一台能访问到本机IP地址的机器都可以去下载这个镜像。