Docker仓库管理
仓库(Repository)是集中存放镜像的地方。又分为公有仓库(public)和私有仓库(private)
一个容易混淆的的概念是注册服务器(Registry)。实际上注册服务器是存放仓库的具体服务器,每个服务器上都有很多个仓库,而每个仓库下面都有多个镜像。从这方面来说,仓库可以认为是一个具体的项目或目录。例如对于仓库地址dl.dockerpool.com/centos来说,dl.dockerpool.com是注册服务器地址,centos是仓库名。
1:Docker Hub 公共镜像市场
Docker Hub是官方提供的最大的公共镜像仓库,对于大部分需求都可以通过Docker Hub中直接下载来实现,首先需要注册一个账号,docker login 登录之后可以上传个人制作的镜像到Docker Hub。
2:第三方镜像市场
国内云服务商基本都提供了Docker镜像市场,比如阿里云,腾讯云,道客云等等
3:搭建本地私有仓库
Harbor部署
4:测试上传下载镜像
# 上传
[root@virtual_host ~]# docker tag nginx:alpine registry.kubernetes.com/library/nginx:alpine
[root@virtual_host ~]# docker push registry.kubernetes.com/library/nginx:alpine
The push refers to repository [registry.kubernetes.com/library/nginx]
6fda88393b8b: Layer already exists
a770f8eba3cb: Layer already exists
318191938fd7: Layer already exists
89f4d03665ce: Layer already exists
67bae81de3dc: Layer already exists
8d3ac3489996: Layer already exists
alpine: digest: sha256:050385609d832fae11b007fbbfba77d0bba12bf72bc0dca0ac03e09b1998580f size: 1568
# 下载
[root@virtual_host ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
[root@virtual_host ~]# docker pull registry.kubernetes.com/library/nginx:alpine
alpine: Pulling from library/nginx
59bf1c3509f3: Pull complete
8d6ba530f648: Pull complete
5288d7ad7a7f: Pull complete
39e51c61c033: Pull complete
ee6f71c6f4a8: Pull complete
f2303c6c8865: Pull complete
Digest: sha256:050385609d832fae11b007fbbfba77d0bba12bf72bc0dca0ac03e09b1998580f
Status: Downloaded newer image for registry.kubernetes.com/library/nginx:alpine
registry.kubernetes.com/library/nginx:alpine
[root@virtual_host ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
registry.kubernetes.com/library/nginx alpine bef258acf10d Less than a second ago 23.4MB
5:registry另测试