Docker应用容器引擎——创建镜像的私有仓库以及设置加密认证

1.什么是Docker 仓库

  • 仓库是集中存放镜像文件的场所。有时候会把仓库仓库注册服务器(Registry)混为一谈,并不严格区分。
  • 实际上,仓库注册服务器上往往存放着多个仓库,每个仓库中又包含了多个镜像,每个镜像有不同的标签(tag)
  • 仓库分为公开仓库(Public)私有仓库(Private)两种形式。最大的公开仓库是 Docker Hub,存放了数量庞大的镜像供用户下载。
  • 国内的公开仓库包括 Docker Pool等,可以提供大陆用户更稳定快速的访问。
  • 当然,用户也可以在本地网络内创建一个私有仓库。
  • 当用户创建了自己的镜像之后就可以使用 push 命令将它上传到公有或者私有仓库。 这样下次在另外一台机器上使用这个镜像时候,只需要从仓库上pull 下来就可以了。
  • 在这里插入图片描述
  • 在Docker Hub上上传镜像在这里插入图片描述

在docker hub 上创建自己的仓库

1.注册账号
在这里插入图片描述
创建仓库
在这里插入图片描述
在这里插入图片描述在这里插入图片描述此时在官方的仓库中,已经创建了一个位置,接下就可以把自己的镜像push到仓库中
上传镜像到仓库中之前,需要login 登陆
在这里插入图片描述
在这里插入图片描述
上传镜像之前,在vyao将镜像的名字改为 用户名/镜像名 的形式,在执行push命令,把镜像上传到docker hub仓库中。
在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述

2. 私有仓库registry的优势

(1)节省网络带宽,针对于每个镜像不用每个人都去中央仓库上面去下载,只需要从私有仓库中下载即可

(2)提供镜像资源利用,针对于公司内部使用的镜像,推送到本地的私有仓库中,以供公司内部相关人员使用。

Docker官方提供的工具docker-registry可以用于构建私有的镜像仓库。

3.Registry的工作原理

在这里插入图片描述
Index服务主要提供镜像索引以及用户认证的功能

  • 当下载一个镜像的时候,首先会去index服务上做认证,然后查找镜像所在的registry的地址并放回给docker客户端
  • docker客户端再从registry下载镜像,在下载过程中 registry会去index校验客户端token的合法性
  • 不同镜像可以保存在不同的registry服务上,其索引信息都放在index服务上

Docker Registry有三个角色,分别是indexregistryregistry client

(1)index

负责并维护有关用户帐户、镜像的校验以及公共命名空间的信息。
Web UI
元数据存储
认证服务
符号化

(2)registry

是镜像和图表的仓库,它不具有本地数据库以及不提供用户认证,通过Index Auth service的Token的方式进行认证。

(3)Registry Client

Docker充当registry客户端来维护推送和拉取,以及客户端的授权。

4.创建私有仓库以及上传本地镜像到私有仓库当中

在这里插入图片描述

Docker 官方已经把仓库封装为镜像,直接通过启动容器就可以完成部署仓库,导入registry镜像

(1)拉取私有仓库的镜像

[root@server1~]# docker search registry
[root@server1~]# docker pull registry

在这里插入图片描述
(2)基于镜像运行registry容器

registry容器内的数据卷目录为/var/lib/registry/

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值