[发明专利]容器镜像的同步方法和系统在审
申请号: | 202111123944.4 | 申请日: | 2021-09-24 |
公开(公告)号: | CN114035808A | 公开(公告)日: | 2022-02-11 |
发明(设计)人: | 谢建超 | 申请(专利权)人: | 杭州博盾习言科技有限公司 |
主分类号: | G06F8/60 | 分类号: | G06F8/60;G06F8/71;G06F11/14 |
代理公司: | 杭州创智卓英知识产权代理事务所(普通合伙) 33324 | 代理人: | 张超 |
地址: | 310000 浙江省杭州市余*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 容器 同步 方法 系统 | ||
本申请涉及容器镜像的同步方法和系统,属于互联网领域,该方法应用于同时同步多个容器镜像的场景,且该方法包括:分析各容器镜像,提取镜像Manifest文件,该镜像Manifest文件中包含镜像层信息;根据各镜像层信息,对重复的镜像层文件进行去重,以使多个容器镜像共用相同镜像层,并生成容器镜像压缩文件,该容器镜像压缩文件包含保留的镜像层文件和基于保留的镜像层文件生成的镜像Manifest文件;解压容器镜像压缩文件,根据解压得到的镜像层文件和镜像Manifest文件,重构完整的容器镜像文件,并将完整的容器镜像文件同步到网络隔离环境中的镜像中心。根据本申请实施例,通过减少重复镜像层文件的压缩,能够降低压缩包文件的体积,从而提高镜像同步的速度和效率。
技术领域
本申请涉及互联网技术领域,特别是涉及容器镜像的同步方法和系统。
背景技术
随着互联网技术的发展,应用的需求正在变得越来越复杂,例如,需要支持更多的用户,需要更强的计算能力,需要更加稳定和安全等等。为了支撑这些不断增长的需求,云计算技术应运而生。通过云计算,将应用部署到云端后,可以不必再关注那些令人头疼的硬件和软件问题,而是由专业团队去解决。
容器化技术是云计算的关键技术之一,保证了应用随时随地可用,以及资源快速按需扩展;其中,容器是一种轻量级、可移植、自包含的软件打包技术,使应用程序可以在几乎任何地方以相同的方式运行。
具体而言,容器化技术通过软件层虚拟化从而将应用运行环境统一打包成容器镜像,通过对容器镜像的分发保证了环境的一致性;其中,容器镜像是一个模板,是容器应用打包的标准格式,在部署容器化应用时可以指定容器镜像,容器镜像可以来自于镜像中心或者用户的私有Registry。例如一个容器镜像可以包含一个完整的Ubuntu操作系统环境,里面仅安装了用户需要的应用程序及其依赖文件。
对于大多数场景下,通过调用镜像Registry接口可以直接在两个容器镜像中心进行容器镜像的分发和同步。但是,对于一些安全等级要求极高的场景,例如,在客户现场进行SaaS实施交付的场景中,客户不允许访问外部网络,只能将容器镜像打包成Tar包,接着使用U盘复制到客户环境中,再通过Docker加载到容器环境,然后同步到客户容器镜像中心。对于镜像包多达几个G的场景,每次都要同步几个G的文件,这一过程需要耗费非常多的时间。因此,在网络隔离环境中通过传统的容器镜像同步方式速度慢、效率低。
发明内容
本申请实施例提供了一种容器镜像的同步方法和系统,以至少解决相关技术中容器镜像同步速度慢、效率低的问题。
第一方面,本申请实施例提供了一种容器镜像的同步方法,所述方法包括:分析各所述容器镜像,提取镜像Manifest文件,所述镜像Manifest文件中包含镜像层信息;根据各所述镜像层信息,对重复的镜像层文件进行去重,以使多个所述容器镜像共用相同镜像层,并生成容器镜像压缩文件,所述容器镜像压缩文件包含保留的镜像层文件和基于所述保留的镜像层文件生成的镜像Manifest文件;解压所述容器镜像压缩文件,根据解压得到的镜像层文件和镜像Manifest文件,重构完整的容器镜像文件,并将所述完整的容器镜像文件同步到网络隔离环境中的镜像中心。
在其中一些实施例中,在所述分析各所述容器镜像,提取镜像Manifest文件之前,所述方法还包括:获取多个容器镜像名,其中,所述多个容器镜像名以列表的形式输入;对获取的容器镜像名,确定本地是否已经存在,若否,则从网络开放环境中的镜像中心下载相应的容器镜像。
在其中一些实施例中,所述根据各所述镜像层信息,对重复的镜像层文件进行去重包括:将各所述镜像层信息通过哈希算法映射为镜像层哈希ID;对相同镜像层哈希ID的镜像层文件进行去重。
在其中一些实施例中,在容器镜像迭代更新的情况下,所述方法还包括:保留新版本容器镜像相对于旧版本容器镜像存在差异的镜像层文件,丢弃所述新版本容器镜像中与所述旧版本容器镜像相同的镜像层文件,得到保留的镜像层文件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州博盾习言科技有限公司,未经杭州博盾习言科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111123944.4/2.html,转载请声明来源钻瓜专利网。