Docker仓库
Docker的三大核心概念:
- 仓库(Repository)
- 镜像(Image)
- 容器(Container)
分级
注册服务器
仓库
镜像
容器
仓库镜像
如果从非官方的仓库下载,则需要在仓库名称前指定完整的仓库地址。
网易蜂巢
例如从网易蜂巢的镜像源来下载ubuntu:18.04镜像,可以使用如下命令,此时下载的镜像名称为hub.c.163.com/public/ubuntu:18.04
:
$ docker pull hub.c.163.com/public/ubuntu:18.04
仓库分类
- 公共仓库
- Docker Hub
- 私有仓库
Docker Hub
Docker Hub是Docker官方提供的最大的公共镜像仓库,目前包括了超过100000的镜像,地址为https://hub.docker.com。大部分对镜像的需求,都可以通过在Docker Hub中直接下载镜像来实现。
公共仓库
Docker Hub
登录:docker login命令
查找镜像:docker search命令
下载镜像:docker [image] pull命令
自动创建
1)创建并登录Docker Hub,以及目标网站如Github;
2)在目标网站中允许Docker Hub访问服务;
3)在Docker Hub中配置一个“自动创建”类型的项目;
4)选取一个目标网站中的项目(需要含Dockerfile)和分支;
5)指定Dockerfile的位置,并提交创建。
之后,可以在Docker Hub的“自动创建”页面中跟踪每次创建的状态。
私有仓库
使用registry镜像创建私有仓库
docker run -d -p 5000:5000 registry:2
将上传的镜像放到/opt/data/registry目录:
docker run -d -p 5000:5000 -v /opt/data/registry:/var/lib/registry registry:2
测试上传和下载镜像。
创建私有仓库
docker tag ubuntu:18.04 10.0.2.2:5000/test
docker push 10.0.2.2:5000/test
curl http://10.0.2.2:5000/v2/search
现在可以到任意一台能访问到10.0.2.2地址的机器去下载这个镜像了。
关闭对仓库的安全性检查。
DOCKER_OPTS="--insecure-registry 10.0.2.2:5000"
sudo service docker restart
docker pull 10.0.2.2:5000/test
docker tag 10.0.2.2:5000/test ubuntu:18.04
定义
集中存放镜像的地方
仓库放在注册服务器里