镜像构建的方法、装置、电子设备和存储介质制造方法及图纸

技术编号:30338768 阅读:27 留言:0更新日期:2021-10-12 23:03
本发明专利技术公开了镜像构建的方法、装置、电子设备和存储介质,涉及计算机技术领域。该方法的一具体实施方式包括:根据基础镜像名称,从镜像仓库中获取与基础镜像名称对应的基础镜像的标识;从缓存中获取与基础镜像的标识对应的目标基础镜像,目标基础镜像为删除中间文件后的基础镜像,中间文件表示被标记删除的文件;根据目标基础镜像,构建目标镜像。该实施方式能够解决镜像构建的速度和效率低的问题。式能够解决镜像构建的速度和效率低的问题。式能够解决镜像构建的速度和效率低的问题。

【技术实现步骤摘要】
镜像构建的方法、装置、电子设备和存储介质


[0001]本专利技术涉及计算机
,尤其涉及一种镜像构建的方法、装置、电子设备和存储介质。

技术介绍

[0002]目前,在云计算中,镜像为一种常用的交付方式。镜像是在容器中,通过Dockerfile来构建的。构建镜像时通常为从镜像仓库中拉取用于构建的基础镜像,然后顺序执行Dockerfile中的指令来构建。镜像仓库中可以存储多个基础镜像,以及对每个基础镜像的内容可以进行更新,更新方式为在原基础镜像的基础上增加镜像层,增加的镜像层中指示了对原基础镜像增加和/或删除的内容,表示在构建镜像时需要在原基础镜像基础上增加和/或删除对应内容后再进行镜像构建,这些被指示需要删除的内容可以称为中间文件。
[0003]在实现本专利技术过程中,专利技术人发现现有技术中至少存在如下问题:
[0004]由于基础镜像通过增加镜像层的方式更新,所以在构建镜像时从镜像仓库中获取的基础镜像有时会包括更新时增加的镜像层,如果增加镜像层中指示了基础镜像中要删除的中间文件,则在构建镜像时需要先根据基础镜像中各镜像层进行中间文件删除后再进行镜像构建,从而增加构建镜像使用的时间,进而降低镜像构建的速度和效率。

技术实现思路

[0005]有鉴于此,本专利技术实施例提供一种镜像构建的方法、装置、系统和存储介质,能够解决在构建镜像时需要先根据基础镜像中各镜像层进行中间文件删除后再进行镜像构建,增加构建镜像使用的时间,降低镜像构建的速度和效率的问题。
[0006]为实现上述目的,根据本专利技术实施例的一个方面,提供了一种镜像构建的方法。
[0007]本专利技术实施例的一种镜像构建的方法包括:根据基础镜像名称,从镜像仓库中获取与所述基础镜像名称对应的基础镜像的标识;从缓存中获取与所述基础镜像的标识对应的目标基础镜像,所述目标基础镜像为删除中间文件后的基础镜像,所述中间文件表示被标记删除的文件;根据所述目标基础镜像,构建目标镜像。
[0008]在一个实施例中,所述获取与所述基础镜像的标识对应的目标基础镜像之前,还包括:
[0009]从所述镜像仓库中获取所述基础镜像的层文件和所述基础镜像的标识;
[0010]删除所述层文件中被标记删除的文件,将所述层文件中剩余的文件确定为目标基础镜像;
[0011]将所述目标基础镜像与所述基础镜像的标识之间的对应关系存储至所述缓存。
[0012]在又一个实施例中,所述删除所述层文件中被标记删除的文件,将所述层文件中剩余的文件确定为目标基础镜像,包括:
[0013]将所述基础镜像的镜像层按照由小到大的顺序,依次确定为当前镜像层,并对每
个所述当前镜像层,删除所述当前镜像层的层文件中的被标记删除的文件;
[0014]将所述基础镜像的层文件中剩余的文件确定为目标基础镜像。
[0015]在又一个实施例中,所述删除所述当前镜像层的层文件中的被标记删除的文件,包括:
[0016]获取在所述当前镜像层以上的所有镜像层的层文件中的指示文件的文件名,所述指示文件的文件名包括删除标识和目标文件名;
[0017]在所述当前镜像层的层文件中,筛选出与所述目标文件名相同的文件作为被标记删除的文件,并删除被标记删除的文件。
[0018]在又一个实施例中,所述删除所述层文件中被标记删除的文件,将所述层文件中剩余的文件确定为目标基础镜像,包括:
[0019]将所述基础镜像的镜像层按照由小到大的顺序,依次确定为目标镜像层,并对所述目标镜像层,获取目标镜像层的层文件中指示文件的文件名,所述指示文件的文件名包括删除标识和目标文件名,在所述目标镜像层之下的所有镜像层的层文件中,筛选出与所述目标文件名相同的文件作为被标记删除的文件,并删除所述被标记删除的文件;
[0020]将所述基础镜像的层文件中剩余的文件确定为目标基础镜像。
[0021]在又一个实施例中,所述获取与所述基础镜像的标识对应的目标基础镜像,包括:
[0022]判断缓存中是否存储与所述基础镜像的标识对应的目标基础镜像;
[0023]若是,则从缓存中获取所述目标基础镜像。
[0024]为实现上述目的,根据本专利技术实施例的另一方面,提供了一种镜像构建的装置。
[0025]本专利技术的一种镜像构建的装置包括:获取单元,用于根据基础镜像名称,从镜像仓库中获取与所述基础镜像名称对应的基础镜像的标识;所述获取单元,还用于从缓存中获取与所述基础镜像的标识对应的目标基础镜像,所述目标基础镜像为删除中间文件后的基础镜像,所述中间文件表示被标记删除的文件;构建单元,用于根据所述目标基础镜像,构建目标镜像。
[0026]在一个实施例中,所述获取单元,还用于从所述镜像仓库中获取所述基础镜像的层文件和所述基础镜像的标识;
[0027]还包括:
[0028]确定单元,用于删除所述层文件中被标记删除的文件,将所述层文件中剩余的文件确定为目标基础镜像;
[0029]存储单元,用于将所述目标基础镜像与所述基础镜像的标识之间的对应关系存储至缓存。
[0030]在又一个实施例中,所述确定单元,具体用于:
[0031]将所述基础镜像的镜像层按照由小到大的顺序,依次确定为当前镜像层,并对每个所述当前镜像层,确定所述当前镜像层中包括删除标识的文件,根据所述包括删除标识的文件确定被标记删除的文件,以及删除所述被标记删除的文件;
[0032]将所述基础镜像的层文件中剩余的文件确定为目标基础镜像。
[0033]在又一个实施例中,所述确定单元,所述确定单元,具体用于:
[0034]获取在所述当前镜像层以上的所有镜像层的层文件中的指示文件的文件名,所述指示文件的文件名包括删除标识和目标文件名;
[0035]在所述当前镜像层的层文件中,筛选出与所述目标文件名相同的文件作为被标记删除的文件,并删除所述被标记删除的文件。
[0036]在又一个实施例中,所述确定单元,具体用于:
[0037]将所述基础镜像的镜像层按照由小到大的顺序,依次确定为目标镜像层,并对所述目标镜像层,获取目标镜像层的层文件中指示文件的文件名,所述指示文件的文件名包括删除标识和目标文件名,在所述目标镜像层之下的所有镜像层的层文件中,筛选出与所述目标文件名相同的文件作为被标记删除的文件,并删除所述被标记删除的文件;
[0038]将所述基础镜像的层文件中剩余的文件确定为目标基础镜像。
[0039]在又一个实施例中,还包括:
[0040]判断单元,用于判断缓存中是否存储与所述基础镜像的标识对应的目标基础镜像;
[0041]获取单元,具体用于若是,则从缓存中获取所述目标基础镜像。
[0042]为实现上述目的,根据本专利技术实施例的再一个方面,提供了一种电子设备。
[0043]本专利技术实施例的一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种镜像构建的方法,其特征在于,包括:根据基础镜像名称,从镜像仓库中获取与所述基础镜像名称对应的基础镜像的标识;从缓存中获取与所述基础镜像的标识对应的目标基础镜像,所述目标基础镜像为删除中间文件后的基础镜像,所述中间文件表示被标记删除的文件;根据所述目标基础镜像,构建目标镜像。2.根据权利要求1所述的方法,其特征在于,所述获取与所述基础镜像的标识对应的目标基础镜像之前,还包括:从所述镜像仓库中获取所述基础镜像的层文件和所述基础镜像的标识;删除所述层文件中被标记删除的文件,将所述层文件中剩余的文件确定为目标基础镜像;将所述目标基础镜像与所述基础镜像的标识之间的对应关系存储至所述缓存。3.根据权利要求2所述的方法,其特征在于,所述删除所述层文件中被标记删除的文件,将所述层文件中剩余的文件确定为目标基础镜像,包括:将所述基础镜像的镜像层按照由小到大的顺序,依次确定为当前镜像层,并对每个所述当前镜像层,删除所述当前镜像层的层文件中的被标记删除的文件;将所述基础镜像的层文件中剩余的文件确定为目标基础镜像。4.根据权利要求3所述的方法,其特征在于,所述删除所述当前镜像层的层文件中的被标记删除的文件,包括:获取在所述当前镜像层之上的所有镜像层的层文件中的指示文件的文件名,所述指示文件的文件名包括删除标识和目标文件名;在所述当前镜像层的层文件中,筛选出与所述目标文件名相同的文件作为被标记删除的文件,并删除所述被标记删除的文件。5.根据权利要求2所述的方法,其特征在于,所述删除所述层文件中被标记删除的文件,将所述层文件中剩余的文件确定为目标基础镜像,包括:将所述基础镜像的镜像层按照由小到大的顺序,依次确定为目标镜像层,并对所述目标...

【专利技术属性】
技术研发人员:梁晓雷樊建刚
申请(专利权)人:北京京东世纪贸易有限公司
类型:发明
国别省市:

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

1