[发明专利]容器镜像的同步方法和系统在审
申请号: | 202111123944.4 | 申请日: | 2021-09-24 |
公开(公告)号: | CN114035808A | 公开(公告)日: | 2022-02-11 |
发明(设计)人: | 谢建超 | 申请(专利权)人: | 杭州博盾习言科技有限公司 |
主分类号: | G06F8/60 | 分类号: | G06F8/60;G06F8/71;G06F11/14 |
代理公司: | 杭州创智卓英知识产权代理事务所(普通合伙) 33324 | 代理人: | 张超 |
地址: | 310000 浙江省杭州市余*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 容器 同步 方法 系统 | ||
1.一种容器镜像的同步方法,其特征在于,所述方法包括:
分析各容器镜像,提取镜像Manifest文件,所述镜像Manifest文件中包含镜像层信息;
根据各所述镜像层信息,对重复的镜像层文件进行去重,以使多个所述容器镜像共用相同镜像层,并生成容器镜像压缩文件,所述容器镜像压缩文件包含保留的镜像层文件和基于所述保留的镜像层文件生成的镜像Manifest文件;
解压所述容器镜像压缩文件,根据解压得到的镜像层文件和镜像Manifest文件,重构完整的容器镜像文件,并将所述完整的容器镜像文件同步到网络隔离环境中的镜像中心。
2.根据权利要求1所述的方法,其特征在于,在所述分析各所述容器镜像,提取镜像Manifest文件之前,所述方法还包括:
获取多个容器镜像名,其中,所述多个容器镜像名以列表的形式输入;
对获取的容器镜像名,确定本地是否已经存在,若否,则从网络开放环境中的镜像中心下载相应的容器镜像。
3.根据权利要求1所述的方法,其特征在于,所述根据各所述镜像层信息,对重复的镜像层文件进行去重包括:
将各所述镜像层信息通过哈希算法映射为镜像层哈希ID;
对相同镜像层哈希ID的镜像层文件进行去重。
4.根据权利要求1所述的方法,其特征在于,在容器镜像迭代更新的情况下,所述方法还包括:
保留新版本容器镜像相对于旧版本容器镜像存在差异的镜像层文件,丢弃所述新版本容器镜像中与所述旧版本容器镜像相同的镜像层文件,得到保留的镜像层文件。
5.根据权利要求4所述的方法,其特征在于,在所述解压所述容器镜像压缩文件之后,所述方法还包括:
将解压得到的所述保留的镜像层文件与本地已存在的所述旧版本容器镜像中与所述新版本容器镜像相同的镜像层文件进行联合构建,得到完整的容器镜像文件。
6.根据权利要求1-5中任一项所述的方法,其特征在于,在所述分析各所述容器镜像,提取镜像Manifest文件之前,所述方法还包括:
在依据OCI镜像规范生产容器镜像的过程中,根据Dockerfile文件中的执行语句,对每一个执行语句生成一层镜像文件,称为镜像层文件;
将各所述镜像层文件按照预设文件结构组织到操作系统中,并生成镜像Manifest文件。
7.一种容器镜像的同步系统,其特征在于,所述系统包括镜像精简装置和镜像恢复装置,其中,所述镜像精简装置包括镜像分析模块、镜像精简模块以及镜像压缩模块;所述镜像恢复装置包括镜像解压缩模块、镜像层重建模块以及镜像中心同步模块,
所述镜像分析模块用于分析各所述容器镜像,提取镜像Manifest文件,所述镜像Manifest文件中包含镜像层信息;
所述镜像精简模块用于根据各所述镜像层信息,对重复的镜像层文件进行去重,以使多个所述容器镜像共用相同镜像层;
所述镜像压缩模块用于生成容器镜像压缩文件,所述容器镜像压缩文件包含保留的镜像层文件和基于所述保留的镜像层文件生成的镜像Manifest文件;
所述镜像解压缩模块用于解压所述容器镜像压缩文件;
所述镜像层重建模块用于根据解压得到的镜像层文件和镜像Manifest文件,重构完整的容器镜像文件;
所述镜像中心同步模块用于将所述完整的容器镜像文件同步到网络隔离环境中的镜像中心。
8.根据权利要求7所述的系统,其特征在于,所述镜像分析模块还用于获取多个容器镜像名,其中,所述多个容器镜像名以列表的形式输入;对获取的容器镜像名,确定本地是否已经存在,若否,则从网络开放环境中的镜像中心下载相应的容器镜像。
9.根据权利要求7所述的系统,其特征在于,所述镜像精简模块还用于将各所述镜像层信息通过哈希算法映射为镜像层哈希ID;对相同镜像层哈希ID的镜像层文件进行去重。
10.根据权利要求7-9中任一项所述的系统,其特征在于,所述镜像精简模块还用于在容器镜像迭代的情况下,保留新版本容器镜像相对于旧版本容器镜像存在差异的镜像层文件,丢弃所述新版本容器镜像中与所述旧版本容器镜像相同的镜像层文件,得到保留的镜像层文件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州博盾习言科技有限公司,未经杭州博盾习言科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111123944.4/1.html,转载请声明来源钻瓜专利网。