容器镜像的构建方法、装置、服务器及存储介质制造方法及图纸

技术编号:33730736 阅读:13 留言:0更新日期:2022-06-08 21:26
本申请涉及一种容器镜像的构建方法、装置、服务器及存储介质,其中,该容器镜像的构建方法,包括:获取对目标容器的源码仓库中的多个源码块进行监测的监测数据,其中,所述监测数据包括多个事件,所述事件用于表征对所述源码块的处理;根据多个所述事件,判断所述源码块是否发生变动;在判断到所述源码块发生变动时,根据发生变动的所述源码块生成流水线配置文件,并基于所述流水线配置文件,对发生变动的所述源码块所对应的镜像对象进行重构,通过本申请,解决了修改镜像对应的源码需要对所有镜像进行重新构建,造成时间成本高的问题,避免对同一个源码仓库的每一个服务都去构建一次镜像,实现仅对修改源码的服务进行镜像的构建,节省时间成本。节省时间成本。节省时间成本。

【技术实现步骤摘要】
容器镜像的构建方法、装置、服务器及存储介质


[0001]本申请涉及数据存储
,尤其涉及一种容器镜像的构建方法、装置、服务器及存储介质。

技术介绍

[0002]相关技术中,开源的生产部署容器关联平台Rancher在进行流水线生成,会先推送代码到Rancher的源码仓库(Code repository),然后根据构造镜像的流水线(Rancher pipeline)的流水线配置文件(rancher.yaml)对应的文件配置,进行源码打包成镜像,如果有多个文件配置,就会进行多个源码打包成镜像的作业。若源码里有多个需要打包的服务或者镜像对象,修改源码中的部分服务或镜像对象对应的源码时,将修改的源码提交源码仓库后,Rancher在进行流水线生成时,会对所有服务或镜像对象都进行重新镜像构建,造成镜像的重复构建、时间成本高。
[0003]针对相关技术中修改镜像对应的源码需要对所有镜像进行重新构建,造成时间成本高的问题,尚未存在有效的解决方案。

技术实现思路

[0004]本申请提供了一种容器镜像的构建方法、装置、服务器及存储介质,以至少解决相关技术中修改镜像对应的源码需要对所有镜像进行重新构建,造成时间成本高的问题。
[0005]第一方面,本申请提供了一种容器镜像的构建方法,包括:获取对目标容器的源码仓库中的多个源码块进行监测的监测数据,其中,所述监测数据包括多个事件,所述事件用于表征对所述源码块的处理;根据多个所述事件,判断所述源码块是否发生变动;在判断到所述源码块发生变动时,根据发生变动的所述源码块生成流水线配置文件,并基于所述流水线配置文件,对发生变动的所述源码块所对应的镜像对象进行重构。
[0006]第二方面,本申请提供了一种容器镜像的构建装置,包括:
[0007]获取模块,用于获取对目标容器的源码仓库中的多个源码块进行监测的监测数据,其中,所述监测数据包括多个事件,所述事件用于表征对所述源码块的处理;
[0008]判断模块,用于根据多个所述事件,判断所述源码块是否发生变动;
[0009]处理模块,用于在判断到所述源码块发生变动时,根据发生变动的所述源码块生成流水线配置文件,并基于所述流水线配置文件,对发生变动的所述源码块所对应的镜像对象进行重构。
[0010]第三方面,提供了一种服务器,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
[0011]存储器,用于存放计算机程序;
[0012]处理器,用于执行存储器上所存放的程序时,实现第一方面任一项实施例所述的容器镜像的构建方法的步骤。
[0013]第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机
程序被处理器执行时实现如第一方面任一项实施例所述的容器镜像的构建方法的步骤。
[0014]与相关技术相比,在本实施例中提供的容器镜像的构建方法、装置、服务器及存储介质,通过获取对目标容器的源码仓库中的多个源码块进行监测的监测数据,其中,所述监测数据包括多个事件,所述事件用于表征对所述源码块的处理;根据多个所述事件,判断所述源码块是否发生变动;在判断到所述源码块发生变动时,根据发生变动的所述源码块生成流水线配置文件,并基于所述流水线配置文件,对发生变动的所述源码块所对应的镜像对象进行重构,解决了修改镜像对应的源码需要对所有镜像进行重新构建,造成时间成本高的问题,避免对同一个源码仓库的每一个服务都去构建一次镜像,实现仅对修改源码的服务进行镜像的构建,节省时间成本。
[0015]本申请的一个或多个实施例的细节在以下附图和描述中提出,以使本申请的其他特征、目的和优点更加简明易懂。
附图说明
[0016]此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本专利技术的实施例,并与说明书一起用于解释本专利技术的原理。
[0017]为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0018]图1为本申请实施例提供的一种容器镜像的构建方法的流程示意图;
[0019]图2为本申请优选实施例提供的一种容器镜像的构建过程的示意图;
[0020]图3是本申请实施例的容器镜像的构建装置的结构框图;
[0021]图4是本申请实施例的服务器结构示意图。
具体实施方式
[0022]为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0023]首先,对本申请实施例中涉及到的相关术语及现有技术进行解释说明如下:
[0024]Rancher,开源的生产部署容器管理平台,Rancher是一个容器集群的编排工具,基于docker(应用容器引擎)的又自带图形用户界面(Graphical User Interface,GUI),在部署和使用的易用性方便比较突出;Rancher为容器提供一揽子基础架构服务:标准接口CNI(Container Network Interface)兼容的网络服务、存储服务、主机管理、负载均衡、防护墙;Rancher让上述服务跨越公有云、私有云、虚拟机、物理机环境运行,真正实现一键式应用部署和管理。
[0025]Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。
[0026]Rancher pipeline,构造镜像的流水线。
[0027]Code repository,源码仓库。
[0028]DockerFile,构建镜像的配置文件。
[0029]Rancher yaml,流水线配置文件。
[0030]下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
[0031]图1为本申请实施例提供的一种容器镜像的构建方法的流程示意图。如图1所示,本申请实施例提供了一种容器镜像的构建方法,该方法包括如下步骤:
[0032]步骤S101,获取对目标容器的源码仓库中的多个源码块进行监测的监测数据,其中,监测数据包括多个事件,事件用于表征对源码块的处理。
[0033]在本实施例中,目标容器包括但不限于采用Rancher完成编排部署的Kubernetes集群所对应的容器。
[0034]在本实施例中,执行本申请实施例的方法的主题可以是Rancher,根据Rancher pipeline的配置,对于每个源码仓库都会存在一个Rancher的配置,基于该配置,Rancher会触发pipeline的步骤;在本实施例中,源码仓本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种容器镜像的构建方法,其特征在于,包括:获取对目标容器的源码仓库中的多个源码块进行监测的监测数据,其中,所述监测数据包括多个事件,所述事件用于表征对所述源码块的处理;根据多个所述事件,判断所述源码块是否发生变动;在判断到所述源码块发生变动时,根据发生变动的所述源码块生成流水线配置文件,并基于所述流水线配置文件,对发生变动的所述源码块所对应的镜像对象进行重构。2.根据权利要求1所述的方法,其特征在于,根据发生变动的所述源码块生成流水线配置文件,包括:获取发生变动的所述源码块所对应的镜像配置文件,其中,所述镜像配置文件用于指引对应的所述源码块构建对应的镜像对象;在已生成的流水线的多个历史镜像对象中,根据对应的所述镜像配置文件确定与发生变动的所述源码块对应的目标镜像对象;基于发生变动的所述源码块与所述目标镜像对象在所述流水线中对应的配置位置信息,生成所述流水线配置文件。3.根据权利要求2所述的方法,其特征在于,基于所述流水线配置文件,对发生变动的所述源码块所对应的镜像对象进行重构,包括:从所述流水线配置文件中,获取所述配置位置信息;获取所述配置位置信息所对应的所述历史镜像对象对应的所述镜像配置文件;基于所述镜像配置文件所对应的配置和发生变动的所述源码块,重新构建对应的镜像对象。4.根据权利要求1所述的方法,其特征在于,根据多个所述事件,判断所述源码块是否发生变动,包括:基于多个所述事件中与每个所述源码块所对应的所述事件,判断是否对每个所述源码块进行修改;在判断到对所述源码块进行修改的情况下,确定所述源码块发生变动。5.根据权利要求4所述的方法,其特征在于,所述源码块包括多个第一源码,基于...

【专利技术属性】
技术研发人员:徐川
申请(专利权)人:北京金山云网络技术有限公司
类型:发明
国别省市:

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

1