Docker入门5 - 仓库 - 私有与公有仓库

225 阅读2分钟

仓库分类
公有仓库
包括官方仓库与第三方仓库\

官方仓库 hub.tenxcloud.com/
第三方仓库如时速云 hub.tenxcloud.com/

私有仓库
搭建私有仓库

自动下载并启动一个registry容器,创建本地的私有仓库服务, 默认情况下,仓库会被创建在容器的/var/lib/registry目录下。可以通过-v参数来将镜像文件存放在本地的指定路径
[root@yz117 docker]# docker run -d -p 5000:5000 registry:2
c9f19496366d6861da1f2c00590e2142b71a00504d735541112944e508519c6a
[root@yz117 docker]# docker images
REPOSITORY                                                    TAG                 IMAGE ID       CREATED         SIZE
test/ub                                                       latest              186579a7a5ea   2 hours ago     63.2MB
<none>                                                        <none>              7da38d446d3d   6 days ago      231MB
17612180197/test                                              1                   cc7965383bc0   6 days ago      63.2MB
test                                                          1                   cc7965383bc0   6 days ago      63.2MB
user/test                                                     1                   cc7965383bc0   6 days ago      63.2MB
<none>                                                        <none>              0478dc4b6bf8   6 days ago      63.2MB
0.0.0.0:5000/test                                             latest              c6ad7e71ba7d   2 weeks ago     63.2MB
ubuntu                                                        18.04               c6ad7e71ba7d   2 weeks ago     63.2MB
registry                                                      2                   2e200967d166   6 weeks ago     24.2MB
centos                                                        latest              5d0da3dc9764   8 months ago    231MB
registry.cn-hangzhou.aliyuncs.com/google_containers/kicbase   v0.0.12-snapshot3   25ac91b9c8d7   21 months ago   952MB
[root@yz117 docker]# docker push 0.0.0.0:5000/test
Using default tag: latest
The push refers to repository [0.0.0.0:5000/test]
3e549931e024: Pushed 
latest: digest: sha256:971a12d7e92a23183dead8bfc415aa650e7deb1cc5fed11a3d21f759a891fde9 size: 529

查看镜像
curl http://0.0.0.0:5000/v2/search

镜像资源分类
根镜像
这些镜像是由Docker公司创建、验证、支持、提供,这样的镜像往往使用单个单词作为名字; 用户镜像
如terry/centos7-terry镜像,是由Docker用户terry创建并维护的,带有用户名称为前缀,表明是某用户下的某仓库。可以通过用户名称前缀“user_name/镜像名”来指定使用某个用户提供的镜像。

常见操作

docker login -u -p 登陆仓库
docker search centos 搜索镜像
docker pull centos 拉取镜像

index.tenxcloud.com/<namespace>/<repository>:<tag>
sudo docker pull index.tenxcloud.com/<username>/<repository>:<tag> 拉取第三方仓库镜像

镜像的自动创建
1)创建并登录Docker Hub,以及目标网站如Github;
2)在目标网站中允许Docker Hub访问服务;
3)在Docker Hub中配置一个“自动创建”类型的项目;
4)选取一个目标网站中的项目(需要含Dockerfile)和分支;
5)指定Dockerfile的位置,并提交创建。之后,可以在Docker Hub的“自动创建”页面中跟踪每次创建的状态。