软件的升级包构建方法、装置和电子设备制造方法及图纸

技术编号:27974652 阅读:18 留言:0更新日期:2021-04-06 14:08
本申请实施例公开一种软件的升级包构建方法、装置和电子设备,该方法包括:从所述镜像注册服务器处,获取所述软件包镜像的所有镜像层的内容摘要信息;所述所有镜像层包括基础镜像层;通过比较所述所有镜像层的内容摘要信息以及所述基础镜像层的内容摘要信息,确定所述基础镜像层和所述应用镜像层的差异内容的内容摘要信息;根据所述差异内容的内容摘要信息,从所述镜像注册服务器拉取所述差异内容对应的镜像文件和所述描述文件;所述描述文件用于至少描述镜像的结构和基础信息;基于所述镜像文件和所述描述文件构建所述软件的升级包。本申请方案缩短了软件升级包的网络传播时间,提高网络传播效率。

【技术实现步骤摘要】
软件的升级包构建方法、装置和电子设备
本申请涉及计算机
,更具体地涉及软件的升级包构建方法、装置和电子设备。
技术介绍
当虚拟化技术以及隔离技术出现后,基于docker的容器化基础架构得以广泛的应用。容器镜像具有一次构建到处运行的特点,使得通过容器镜像进行软件发布的运行的方式得以很快在业界流行开来。但是软件系统由众多容器镜像组成,在快速迭代更新的阶段,软件升级包的传输及升级效率低下。因此,为了提升软件迭代、输出和交付的效率,如何能有效缩短容器镜像的网络传播时间,提高网络传播效率,成为一个亟待解决的问题。
技术实现思路
本申请的目的在于提供一种软件的升级包构建方法、装置和电子设备,以解决现有技术存在的软件升级包的传输及升级效率低下的问题。为解决上述技术问题,本申请实施例是这样实现的:第一方面,提供了一种基于软件的升级包的镜像执行方法,包括:构建软件的升级包,所述软件的软件包镜像,预先在Docker的镜像注册服务器进行了注册;所述构建软件的升级包包括:从所述镜像注册服务器处,获取所述软件包镜像的所有镜像层的内容摘要信息;所述所有镜像层包括基础镜像层;通过比较所述所有镜像层的内容摘要信息以及所述基础镜像层的内容摘要信息,确定所述基础镜像层和所述应用镜像层的差异内容的内容摘要信息;根据所述差异内容的内容摘要信息,从所述镜像注册服务器拉取所述差异内容对应的镜像文件和所述描述文件;所述描述文件用于至少描述镜像的结构和基础信息;基于所述镜像文件和所述描述文件,构建所述软件的升级包;基于所述软件的升级包执行Docker镜像,包括:获取所述升级包;获取所述基础镜像层的镜像文件和描述文件;将所述升级包与所述基础镜像层的镜像文件和描述文件进行合并,以生成可执行的Docker镜像;在所述镜像注册服务器注册所述Docker镜像;注册成功后,在Docker容器中运行所述Docker镜像。第二方面,提供了一种软件的升级包构建方法,包括:所述软件的软件包镜像,预先在Docker的镜像注册服务器进行了注册;所述方法包括:从所述镜像注册服务器处,获取所述软件包镜像的所有镜像层的内容摘要信息;所述所有镜像层包括基础镜像层;通过比较所述所有镜像层的内容摘要信息以及所述基础镜像层的内容摘要信息,确定所述基础镜像层和所述应用镜像层的差异内容的内容摘要信息;根据所述差异内容的内容摘要信息,从所述镜像注册服务器拉取所述差异内容对应的镜像文件和所述描述文件;所述描述文件用于至少描述镜像的结构和基础信息;基于所述镜像文件和所述描述文件,构建所述软件的升级包。第三方面,提供了一种基于以上所述的软件的升级包构建方法的Docker镜像执行方法,包括:获取所述升级包;获取所述基础镜像层的镜像文件和描述文件;将所述升级包与所述基础镜像层的镜像文件和描述文件进行合并,以生成可执行的Docker镜像;在所述镜像注册服务器注册所述Docker镜像;注册成功后,在Docker容器中运行所述Docker镜像。第四方面,提供了一种基于软件的升级包的镜像执行系统,其特征在于,包括:软件的升级包构建单元,所述软件的软件包镜像,预先在Docker的镜像注册服务器进行了注册;所述软件的升级包构建单元执行以下功能:用于从所述镜像注册服务器处,获取所述软件包镜像的所有镜像层的内容摘要信息;所述所有镜像层包括基础镜像层;用于通过比较所述所有镜像层的内容摘要信息以及所述基础镜像层的内容摘要信息,确定所述基础镜像层和所述应用镜像层的差异内容的内容摘要信息;用于根据所述差异内容的内容摘要信息,从所述镜像注册服务器拉取所述差异内容对应的镜像文件和所述描述文件;所述描述文件用于至少描述镜像的结构和基础信息;用于基于所述镜像文件和所述描述文件,构建所述软件的升级包;基于所述软件的升级包的Docker镜像执行单元,用于获取所述升级包;用于获取所述基础镜像层的镜像文件和描述文件;用于将所述升级包与所述基础镜像层的镜像文件和描述文件进行合并,以生成可执行的Docker镜像;用于在所述镜像注册服务器注册所述Docker镜像;用于注册成功后,在Docker容器中运行所述Docker镜像。第五方面,提供一种软件的升级包构建装置,包括:所有镜像层的内容摘要信息获取模块、差异内容的内容摘要信息获取模块、差异内容拉取模块、软件的升级包构建模块,其中,所有镜像层的内容摘要信息获取模块,用于所述软件的软件包镜像,预先在Docker的镜像注册服务器进行了注册;从所述镜像注册服务器处,获取所述软件包镜像的所有镜像层的内容摘要信息;所述所有镜像层包括基础镜像层;差异内容的内容摘要信息获取模块,用于通过比较所述所有镜像层的内容摘要信息以及所述基础镜像层的内容摘要信息,确定所述基础镜像层和所述应用镜像层的差异内容的内容摘要信息;差异内容拉取模块,用于根据所述差异内容的内容摘要信息,从所述镜像注册服务器拉取所述差异内容对应的镜像文件和所述描述文件;所述描述文件用于至少描述镜像的结构和基础信息;软件的升级包构建模块,用于基于所述镜像文件和所述描述文件,构建所述软件的升级包。第六方面,提供一种基于软件的升级包的镜像执行装置,包括:升级包获取模块、基础镜像层文件获取模块、升级包合并模块、镜像注册模块、镜像运行模块,其中,升级包获取模块,用于获取所述升级包;基础镜像层文件获取模块,用于获取所述基础镜像层的镜像文件和描述文件;升级包合并模块,用于将所述升级包与所述基础镜像层的镜像文件和描述文件进行合并,以生成可执行的Docker镜像;镜像注册模块,用于在所述镜像注册服务器注册所述Docker镜像;镜像运行模块,用于注册成功后,在Docker容器中运行所述Docker镜像。第七方面,提供一种电子设备,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述实施例提供的软件的升级包构建方法。第八方面,提供一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现上述实施例提供的软件的升级包构建方法。第九方面,提供一种电子设备,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述实施例提供的基于以上所述的软件的升级包构建方法的Docker镜像执行方法。第十方面,提供一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现上述实施例提供的基于以上所述的软件的升级包构建方法的Docker镜像执行方法。采用以上本申请实施例提供的至少一个技术方案,在进行软件包本文档来自技高网...

【技术保护点】
1.一种基于软件的升级包的镜像执行方法,其特征在于,包括:/n构建软件的升级包,所述软件的软件包镜像,预先在Docker的镜像注册服务器进行了注册;所述构建软件的升级包包括:/n从所述镜像注册服务器处,获取所述软件包镜像的所有镜像层的内容摘要信息;所述所有镜像层包括基础镜像层;/n通过比较所述所有镜像层的内容摘要信息以及所述基础镜像层的内容摘要信息,确定所述基础镜像层和所述应用镜像层的差异内容的内容摘要信息;/n根据所述差异内容的内容摘要信息,从所述镜像注册服务器拉取所述差异内容对应的镜像文件和所述描述文件;所述描述文件用于至少描述镜像的结构和基础信息;/n基于所述镜像文件和所述描述文件,构建所述软件的升级包;/n基于所述软件的升级包执行Docker镜像,包括:/n获取所述升级包;/n获取所述基础镜像层的镜像文件和描述文件;/n将所述升级包与所述基础镜像层的镜像文件和描述文件进行合并,以生成可执行的Docker镜像;/n在所述镜像注册服务器注册所述Docker镜像;/n注册成功后,在Docker容器中运行所述Docker镜像。/n

【技术特征摘要】
1.一种基于软件的升级包的镜像执行方法,其特征在于,包括:
构建软件的升级包,所述软件的软件包镜像,预先在Docker的镜像注册服务器进行了注册;所述构建软件的升级包包括:
从所述镜像注册服务器处,获取所述软件包镜像的所有镜像层的内容摘要信息;所述所有镜像层包括基础镜像层;
通过比较所述所有镜像层的内容摘要信息以及所述基础镜像层的内容摘要信息,确定所述基础镜像层和所述应用镜像层的差异内容的内容摘要信息;
根据所述差异内容的内容摘要信息,从所述镜像注册服务器拉取所述差异内容对应的镜像文件和所述描述文件;所述描述文件用于至少描述镜像的结构和基础信息;
基于所述镜像文件和所述描述文件,构建所述软件的升级包;
基于所述软件的升级包执行Docker镜像,包括:
获取所述升级包;
获取所述基础镜像层的镜像文件和描述文件;
将所述升级包与所述基础镜像层的镜像文件和描述文件进行合并,以生成可执行的Docker镜像;
在所述镜像注册服务器注册所述Docker镜像;
注册成功后,在Docker容器中运行所述Docker镜像。


2.一种软件的升级包构建方法,其特征在于,所述软件的软件包镜像,预先在Docker的镜像注册服务器进行了注册;所述方法包括:
从所述镜像注册服务器处,获取所述软件包镜像的所有镜像层的内容摘要信息;所述所有镜像层包括基础镜像层;
通过比较所述所有镜像层的内容摘要信息以及所述基础镜像层的内容摘要信息,确定所述基础镜像层和所述应用镜像层的差异内容的内容摘要信息;
根据所述差异内容的内容摘要信息,从所述镜像注册服务器拉取所述差异内容对应的镜像文件和所述描述文件;所述描述文件用于至少描述镜像的结构和基础信息;
基于所述镜像文件和所述描述文件,构建所述软件的升级包。


3.根据权利要求2所述的软件升级包的构建方法,其特征在于,根据所述差异内容的内容摘要信息,从所述镜像注册服务器拉取所述差异内容对应的镜像文件和所述描述文件,包括:
根据所述差异内容的内容摘要信息,确定所述差异内容对应的镜像名;
根据所述镜像名,通过调用镜像注册服务器的描述文件访问接口,获取对应于所述镜像名的描述文件,作为所述差异内容对应的描述文件;
根据所述镜像名,通过调用镜像注册服务器的镜像文件访问接口,获取具备所述镜像名的镜像文件,作为所述差异内容对应的镜像文件。


4.一种基于权利要求2所述的软件的升级包构建方法的Docker镜像执行方法,其特征在于,包括:
获取所述升级包;
获取所述基础镜像层的镜像文件和描述文件;
将所述升级包与所述基础镜像层的镜像文件和描述文件进行合并,以生成可执行的Docker镜像;
在所述镜像注册服务器注册所述Docker镜像;
注册成功后,在Docker容器中运行所述Docker镜像。


5.一种基于软件的升级包的镜像执行系统,其特征在于,包括:
软件的升级包构建单元,所述软件的软件包镜像,预先在Docker的镜像注册服务器进行了注册;所述软件的升级包构建单元执行以下功能:
用于从所述镜像注册服务器处,获取所述软件包镜像的所有镜像层的内容摘要信息;所述所有镜像层包括基础镜像层;
用于通过比较所述所有镜像层的内容摘要信息以及所述基础镜像层的内容摘要信息...

【专利技术属性】
技术研发人员:阚志刚张健卢佐华陈彪
申请(专利权)人:北京梆梆安全科技有限公司北京梆梆系统集成服务有限公司
类型:发明
国别省市:北京;11

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

1