System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 容器镜像拉取、分享、推送方法及处理系统技术方案_技高网

容器镜像拉取、分享、推送方法及处理系统技术方案

技术编号:40554076 阅读:19 留言:0更新日期:2024-03-05 19:14
本公开提供了一种容器镜像拉取、分享、推送方法,以及容器镜像处理系统,本公开中,租户通过前端和控制端能够将容器镜像分享给特定的组户,并且控制端将相关的分享关系的信息存入数据库中;后续有拉取需求的租户可以在代理端进行镜像拉取操作,代理端基于此向控制端发送拉取鉴权请求;控制端解析该拉取鉴权请求,并根据解析得到的租户的身份证明信息和所要拉取的容器镜像的信息,确定该租户对容器镜像的拉取权限信息,并在拉取权限信息指示该租户具备对容器镜像的拉取权限的情况下,向代理端发送鉴权通过信息;代理端利用接收到的鉴权通过信息,从镜像仓库中拉取容器镜像,并返回给该租户。

【技术实现步骤摘要】

本公开涉及云计算领域,尤其涉及容器镜像,公开了一种容器镜像拉取、分享、推送方法,以及容器镜像处理系统。


技术介绍

1、容器镜像(container image)将应用程序及其依赖项打包到一个独立的镜像中,使得应用程序可以方便地在云环境和容器平台中进行部署和迁移。容器镜像提供了一种标准化的应用程序打包和交付方式,简化了应用程序的管理和部署过程,因此其已成为整个云计算领域中不可或缺的一环。

2、镜像仓库是用来存储、管理和分发容器镜像的服务。企业在使用镜像仓库时,往往会创建多个租户对镜像进行管理,并存在将其中某个租户的镜像分享给另一个租户的需求。在分享镜像时,为了保证镜像不会暴露于不相关的租户,提升安全性,需要能够指定分享给的租户,而非对企业或项目组内所有租户公开。

3、然而,当前开源的镜像仓库在镜像权限控制方面存在能力缺失。例如,开源的registry是一个无状态、高度可扩展的镜像仓库,registry本身不提供对镜像的权限控制功能。harbor是在registry的基础上进行了扩展和增强,其支持按项目对镜像进行管理,并可以设置项目的访问级别为公开或私有以管理其中镜像的可见性,但是无法精细到租户层级的权限管控。


技术实现思路

1、本公开至少提供了一种容器镜像拉取、分享、推送方法,以及容器镜像处理系统,以实现在租户层级上对容器镜像进行权限管控。

2、根据本公开的一方面,提供了一种容器镜像拉取方法,应用于控制端,包括:

3、获取代理端发送的拉取鉴权请求;其中,所述拉取鉴权请求包括第一租户的第一身份证明信息,以及所述第一租户所要拉取的第一目标容器镜像的信息;

4、解析所述拉取鉴权请求,并根据解析得到的所述第一身份证明信息和第一目标容器镜像的信息,确定所述第一租户对所述第一目标容器镜像的拉取权限信息;

5、在所述拉取权限信息指示所述第一租户具备对所述第一目标容器镜像的拉取权限的情况下,向所述代理端发送鉴权通过信息,以使所述代理端利用所述鉴权通过信息,从第一目标镜像仓库中拉取所述第一目标容器镜像。

6、根据本公开的一方面,提供了一种容器镜像拉取方法,应用于代理端,包括:

7、响应于第一租户的镜像拉取操作,获取到所述第一租户的第一身份证明信息,以及所述第一租户所要拉取的第一目标容器镜像的信息;

8、利用所述第一身份证明信息和所述第一目标容器镜像的信息,生成拉取鉴权请求;

9、将所述拉取鉴权请求发送给控制端,以使所述控制端利用所述拉取鉴权请求,确定所述第一租户对所述第一目标容器镜像的拉取权限信息,并在所述拉取权限信息指示所述第一租户具备对所述第一目标容器镜像的拉取权限的情况下,反馈鉴权通过信息;

10、利用接收到的所述鉴权通过信息,从第一目标镜像仓库中拉取所述第一目标容器镜像。

11、根据本公开的一方面,提供了一种容器镜像分享方法,应用于前端,包括:

12、响应于第三租户的镜像查看操作,生成镜像查看请求,并将所述镜像查看请求发送给控制端,以使所述控制端从数据库中获取并反馈所述第三租户推送的至少一个容器镜像的信息;

13、展示所述控制端反馈的至少一个容器镜像的信息;

14、响应于所述第三租户通过展示的所述容器镜像的信息的镜像分享操作,获取被分享的第二目标容器镜像的信息,以及被分享的第四租户的信息,并将第四租户被分享第二目标容器镜像的信息发送给所述控制端,以使所述控制端将所述第四租户被分享第二目标容器镜像的信息存入数据库中。

15、根据本公开的一方面,提供了一种容器镜像分享方法,应用于控制端,包括:

16、获取前端发送的第四租户被分享第二目标容器镜像的信息;

17、建立第四租户与第二目标容器镜像之间的被分享关系;

18、将所述被分享关系存入数据库中,以使控制端利用所述数据库中存储的被分享关系,确定租户对容器镜像的拉取权限信息。

19、根据本公开的一方面,提供了一种容器镜像推送方法,应用于代理端,包括:

20、响应于第五租户的镜像推送操作,获取所述第五租户的第二身份证明信息,以及所述第五租户要将容器镜像推送到的第二目标镜像仓库的信息;

21、利用第二身份证明信息和所述第二目标镜像仓库的信息,生成并向控制端发送租户校验请求,以使所述控制端根据数据库中存储的租户的标准身份信息以及租户对应的镜像仓库的信息,验证所述第五租户是否为合法租户,以及所述第五租户是否有权限向第二目标镜像仓库推送容器镜像,并在所述第五租户为合法租户,并且第五租户有权限向第二目标镜像仓库推送容器镜像的情况下,反馈校验通过信息;

22、响应于所述校验通过信息,将所述第五租户推送的容器镜像推送到所述第二目标镜像仓库;

23、将所述第五租户向第二目标镜像仓库推送容器镜像完成的信息同步给所述控制端,以使所述控制端将所述第五租户向第二目标镜像仓库推送容器镜像的信息存入数据库中。

24、根据本公开的一方面,提供了一种容器镜像推送方法,应用于控制端,包括:

25、接收代理端发送的租户校验请求;其中,所述租户校验请求包括第五租户的第二身份证明信息,以及所述第五租户要将容器镜像推送到的第二目标镜像仓库的信息;

26、根据数据库中存储的租户的标准身份信息和所述第二身份证明信息,验证所述第五租户是否为合法租户;

27、在所述第五租户为合法租户的情况下,根据所述数据库中存储的租户对应的镜像仓库的信息以及所述第二目标镜像仓库的信息,验证所述第五租户是否有权限向第二目标镜像仓库推送容器镜像;

28、在所述第五租户有权限向第二目标镜像仓库推送容器镜像的情况下,生成并向所述代理端发送校验通过信息,以使所述代理端将所述第五租户推送的容器镜像推送到所述第二目标镜像仓库;

29、响应于代理端发送的所述第五租户向第二目标镜像仓库推送容器镜像完成的信息,将所述第五租户向所述第二目标镜像仓库推送容器镜像的信息存入数据库中。

30、根据本公开的一方面,提供了一种容器镜像处理系统,包括控制端、前端、代理端、数据库以及至少一个镜像仓库;

31、所述镜像仓库,用于存储和管理容器镜像;

32、所述控制端,用于执行上述任一项在控制端执行的方法;

33、所述代理端,用于执行任一项在代理端执行的方法;

34、所述前端,用于执行任一项在前端执行的方法;

35、所述数据库,用于存储租户的信息、镜像仓库的信息、租户的标准身份信息、租户与镜像仓库之间被分享关系的信息、租户与容器镜像之间推送关系的信息。

36、根据本公开的另一方面,提供了一种电子设备,包括:

37、至少一个处理器;以及

38、与该至少一个处理器通信连接的存储器;其中,

39、该存储器存储有可被该至少本文档来自技高网...

【技术保护点】

1.一种容器镜像拉取方法,应用于控制端,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述向所述代理端发送鉴权通过信息,包括:

3.根据权利要求1或2所述的方法,其特征在于,所述根据解析得到的所述第一身份证明信息和第一目标容器镜像的信息,确定所述第一租户对所述第一目标容器镜像的拉取权限信息,包括:

4.一种容器镜像拉取方法,应用于代理端,其特征在于,包括:

5.根据权利要求4所述的方法,其特征在于,所述利用接收到的所述鉴权通过信息,从第一目标镜像仓库中拉取所述第一目标容器镜像,包括:

6.一种容器镜像分享方法,应用于前端,其特征在于,包括:

7.一种容器镜像分享方法,应用于控制端,其特征在于,包括:

8.一种容器镜像推送方法,应用于代理端,其特征在于,包括:

9.一种容器镜像推送方法,应用于控制端,其特征在于,包括:

10.一种容器镜像处理系统,其特征在于,包括控制端、前端、代理

【技术特征摘要】

1.一种容器镜像拉取方法,应用于控制端,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述向所述代理端发送鉴权通过信息,包括:

3.根据权利要求1或2所述的方法,其特征在于,所述根据解析得到的所述第一身份证明信息和第一目标容器镜像的信息,确定所述第一租户对所述第一目标容器镜像的拉取权限信息,包括:

4.一种容器镜像拉取方法,应用于代理端,其特征在于,包括:

5.根据权利要求4所述的方法,其特...

【专利技术属性】
技术研发人员:吴建钢
申请(专利权)人:天翼云科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1