项目镜像体积的优化方法、系统、终端设备及存储介质与流程

文档序号:32953301发布日期:2023-01-14 14:49阅读:33来源:国知局
项目镜像体积的优化方法、系统、终端设备及存储介质与流程

1.本发明涉及镜像体积优化领域,尤其涉及项目镜像体积的优化方法、系统、终端设备及存储介质。


背景技术:

2.目前,在公有云或私有云的场景下,用户将构建成型的镜像推送到对应的仓库。镜像使用了分层,绝大部分使用了系统自带的文件,在公网带宽允许的情况下,不会有很大的差异;但是携带业务之后镜像的体积会增大数倍。在私网或专线的网络情况下,有时只需要修改部分代码,但是由于业务镜像体积较大,传输大体积镜像时网络受限导致业务阻塞,影响整体网络情况。
3.因此,如何解决在私域网络或专线网络情况下,高效地部署业务项目的镜像,避免因传输镜像体积过大时网络受限导致业务阻塞是当前亟待解决的问题。


技术实现要素:

4.本技术的主要目的在于提供项目镜像体积的优化方法、系统、终端设备及存储介质,旨在解决在私域网络或专线网络情况下,高效地部署项目的镜像,避免因传输镜像体积过大时网络受限导致业务阻塞的问题。
5.为实现上述目的,本技术提供镜像体积的优化方法,应用于镜像体积优化技术领域,所述项目镜像体积的优化方法包括以下步骤:
6.获取项目的文件包;
7.对所述项目的文件包进行解析,生成项目的解析文件;
8.将所述解析文件压缩,将压缩得到的压缩解析文件上传到预设的局域网仓库,触发所述局域网仓库下载对应的项目资源项;
9.发送所述项目的升级指令到服务器端,以供所述服务器端根据所述升级指令,从所述预设的局域网仓库中获取压缩解析文件并解压缩,得到解压缩的解析文件;根据解压缩的解析文件,从所述预设的局域网仓库中下载对应的项目资源项;根据所述项目资源项构建所述项目的镜像并部署。
10.可选的,所述对所述项目的文件包进行解析,生成项目的解析文件的步骤包括:
11.依次判断所述项目的文件包中工程是否存在上一个版本,得到判断结果;
12.根据所述判断结果和所述项目的文件包中工程生成工程解析文件;
13.当所述项目的文件包中工程依次解析完成时,根据所述工程解析文件生成所述项目的解析文件,所述项目的解析文件包括依赖描述文件、基础镜像描述文件、源代码文件、版本配置文件。
14.可选的,所述工程解析文件包括工程的新增信息项和/或信息项,所述根据所述判断结果和所述项目的文件包中工程生成工程解析文件的步骤包括:
15.若存在上一个版本,则将所述工程的版本与所述工程的上一个版本解析后进行对
比,得到所述工程的新增信息项;
16.若不存在上一个版本,则解析得到所述工程的信息项。
17.可选的,所述预设的局域网仓库包括镜像仓库、版本配置仓库、依赖仓库,所述将所述解析文件压缩,将压缩得到的压缩解析文件上传到预设的局域网仓库,触发所述局域网仓库下载对应的项目资源项的步骤包括:
18.将所述依赖描述文件和所述源代码文件压缩后上传到所述依赖仓库;
19.将所述基础镜像描述文件上传到所述镜像仓库;
20.将所述版本配置文件压缩后上传到所述版本配置仓库。
21.可选的,应用于局域网仓库,所述项目镜像体积的优化方法还包括以下步骤:
22.接收从客户端上传的压缩解析文件;
23.根据所述压缩解析文件下载对应的项目资源项。
24.可选的,应用于服务器端,所述项目镜像体积的优化方法还包括以下步骤:
25.接收客户端发送的项目的升级指令;
26.根据所述升级指令,从所述预设的局域网仓库中获取压缩解析文件并解压缩,得到解压缩的解析文件;
27.根据解压缩的解析文件,从所述预设的局域网仓库中下载对应的项目资源项;
28.根据所述项目资源项构建所述项目的镜像并部署。
29.可选的,所述根据解压缩后的解析文件中的依赖描述文件,从所述依赖仓库下载所述项目的依赖文件的步骤之后还包括:
30.将所述项目的依赖文件注入到所述项目的架构中。
31.可选的,所述根据解压缩的解析文件,从所述预设的局域网仓库中下载对应的项目资源项的步骤包括:
32.根据解压缩后的解析文件中的依赖描述文件,从所述依赖仓库下载所述项目的依赖文件;和/或
33.根据解压缩后的解析文件中的基础镜像描述文件,从所述镜像仓库下载所述项目的基础镜像。
34.本技术实施案例还提出一种项目镜像体积的优化系统,所述项目镜像体积的优化系统包括客户端、局域网仓库和服务器端,所述项目镜像体积的优化系统包括:
35.所述客户端,用于获取项目的文件包;对所述项目的文件包进行解析,生成项目的解析文件;将所述解析文件压缩,将压缩得到的压缩解析文件上传到预设的局域网仓库,触发所述局域网仓库下载对应的项目资源项;发送所述项目的升级指令到服务器端,以供所述服务器端根据所述升级指令,从所述预设的局域网仓库中获取压缩解析文件并解压缩,得到解压缩的解析文件;根据解压缩的解析文件,从所述预设的局域网仓库中下载对应的项目资源项;根据所述项目资源项构建所述项目的镜像并部署;
36.所述局域网仓库,用于接收从客户端上传的压缩解析文件;根据所述压缩解析文件下载对应的项目资源项;
37.所述服务器端,用于接收客户端发送的项目的升级指令;根据所述升级指令,从所述预设的局域网仓库中获取压缩解析文件并解压缩,得到解压缩的解析文件;根据解压缩的解析文件,从所述预设的局域网仓库中下载对应的项目资源项;根据所述项目资源项构
建所述项目的镜像并部署。
38.本技术实施案例还提出一种终端设备,所述终端设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的项目镜像体积的优化程序,所述项目镜像体积的优化程序被所述处理器执行时实现所述项目镜像体积的优化方法的步骤。
39.本技术实施案例还提出一种存储介质,所述存储介质上存储有项目镜像体积的优化程序,所述项目镜像体积的优化程序被处理器执行时实现所述项目镜像体积的优化方法的步骤。
40.本技术提出的项目镜像体积的优化方法、系统、终端设备及存储介质。通过获取项目的文件包;对所述项目的文件包进行解析,生成项目的解析文件;将所述解析文件压缩,将压缩得到的压缩解析文件上传到预设的局域网仓库,触发所述局域网仓库下载对应的项目资源项;发送所述项目的升级指令到服务器端,以供所述服务器端根据所述升级指令,从所述预设的局域网仓库中获取压缩解析文件并解压缩,得到解压缩的解析文件;根据解压缩的解析文件,从所述预设的局域网仓库中下载对应的项目资源项;根据所述项目资源项构建所述项目的镜像并部署。基于本技术,通过将项目解析为多个部分,然后上传解析文件到局域网仓库中,再通过客户端发送指令控制所述服务器从局域网仓库获取项目资源项从而生成项目的镜像。优化了项目构建镜像的体积,避免了大体积业务镜像在局域网传输造成的业务阻塞,达到了高效地升级项目镜像的效果。
附图说明
41.图1为本技术项目镜像体积的优化装置所属终端设备的功能模块示意图;
42.图2为本技术项目镜像体积的优化方法第一示例性实施例的流程示意图;
43.图3为本技术项目镜像体积的优化方法第二示例性实施例的流程示意图;
44.图4为本技术项目镜像体积的优化方法第三示例性实施例的流程示意图;
45.图5为本技术项目镜像体积的优化方法第四示例性实施例的流程示意图;
46.图6为本技术项目镜像体积的优化方法第五示例性实施例的流程示意图;
47.图7为本技术项目镜像体积的优化方法第六示例性实施例的流程示意图;
48.图8为本技术项目镜像体积的优化方法第七示例性实施例的流程示意图。
49.本技术目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
50.应当理解,此处所描述的具体实施案例仅仅用以解释本技术,并不用于限定本技术。
51.本技术实施例的主要解决方案是获取项目的文件包;对所述项目的文件包进行解析,生成项目的解析文件;将所述解析文件压缩,将压缩得到的压缩解析文件上传到预设的局域网仓库,触发所述局域网仓库下载对应的项目资源项;发送所述项目的升级指令到服务器端,以供所述服务器端根据所述升级指令,从所述预设的局域网仓库中获取压缩解析文件并解压缩,得到解压缩的解析文件;根据解压缩的解析文件,从所述预设的局域网仓库中下载对应的项目资源项;根据所述项目资源项构建所述项目的镜像并部署。基于本技术方案,通过将项目解析为多个部分,然后上传解析文件到局域网仓库中,再通过客户端发送
指令控制所述服务器生成项目的镜像,优化了项目升级时镜像的体积,避免了大体积业务镜像在局域网传输造成的业务阻塞问题,达到了高效地升级项目镜像的效果。
52.具体地,参照图1,图1为本技术项目镜像体积的优化装置所属终端设备的功能模块示意图。该项目镜像体积的优化装置为基于终端设备的、能够将项目进行拆分后,发送项目升级指令到服务器端,以供服务器端从局域网下载项目依赖文件、基础镜像、源代码进行镜像的构建和部署,从而达到高效地升级项目镜像的装置,其可以通过硬件或软件的形式承载于终端设备上。
53.在本实施例中,该镜像体积优化装置所属终端设备至少包括输出模块110、处理器120、存储器130以及通信模块140。
54.存储器130中存储有操作系统以及镜像体积优化程序,所述镜像体积优化装置可以将获取项目的文件包;对所述项目的文件包进行解析,生成项目的解析文件;将所述解析文件压缩,将压缩得到的压缩解析文件上传到预设的局域网仓库,触发所述局域网仓库下载对应的项目资源项;发送所述项目的升级指令到服务器端,以供所述服务器端根据所述升级指令,从所述预设的局域网仓库中获取压缩解析文件并解压缩,得到解压缩的解析文件;根据解压缩的解析文件,从所述预设的局域网仓库中下载对应的项目资源项;根据所述项目资源项构建所述项目的镜像并部署等信息存储于该存储器130中;输出模块110可为显示屏等通信模块140可以包括wifi模块、移动通信模块以及蓝牙模块等,通过通信模块140与外部终端设备或服务器进行通信。
55.其中,存储器130中的项目镜像体积的优化程序,所述项目镜像体积的优化程序被处理器执行时实现以下步骤:
56.获取项目的文件包;
57.对所述项目的文件包进行解析,生成项目的解析文件;
58.将所述解析文件压缩,将压缩得到的压缩解析文件上传到预设的局域网仓库,触发所述局域网仓库下载对应的项目资源项;
59.发送所述项目的升级指令到服务器端,以供所述服务器端根据所述升级指令,从所述预设的局域网仓库中获取压缩解析文件并解压缩,得到解压缩的解析文件;根据解压缩的解析文件,从所述预设的局域网仓库中下载对应的项目资源项;根据所述项目资源项构建所述项目的镜像并部署。
60.进一步地,存储器130中的项目镜像体积的优化程序被处理器执行时还实现以下步骤:
61.依次判断所述项目的文件包中工程是否存在上一个版本,得到判断结果;
62.根据所述判断结果和所述项目的文件包中工程生成工程解析文件;
63.当所述项目的文件包中工程依次解析完成时,根据所述工程解析文件生成所述项目的解析文件,所述项目的解析文件包括依赖描述文件、基础镜像描述文件、源代码文件、版本配置文件。
64.进一步地,存储器130中的项目镜像体积的优化程序被处理器执行时还实现以下步骤:
65.若存在上一个版本,则将所述工程的版本与所述工程的上一个版本解析后进行对比,得到所述工程的新增信息项;
66.若不存在上一个版本,则解析得到所述工程的信息项。
67.进一步地,所述预设的局域网仓库包括镜像仓库、版本配置仓库、依赖仓库,存储器130中的项目镜像体积的优化程序被处理器执行时还实现以下步骤:
68.将所述依赖描述文件和所述源代码文件压缩后上传到所述依赖仓库;
69.将所述基础镜像描述文件上传到所述镜像仓库;
70.将所述版本配置文件压缩后上传到所述版本配置仓库。
71.基于上述终端设备架构但不限于上述架构,提出本技术方法实施例。
72.参照图2,图2为项目镜像体积的优化方法第一示例性实施例的流程示意图。应用于客户端,所述项目镜像体积的优化方法包括:
73.步骤s110,获取项目的文件包;
74.具体地,所述项目可以是新建的项目,也可以是之前存在的项目,一个项目下划分为多个工程文件,项目的文件包从本地目录中获取。
75.步骤s120,对所述项目的文件包进行解析,生成项目的解析文件;
76.具体地,项目文件包的解析是在工程ci构建的过程中得到的,分别解析得到工程的依赖文件及依赖关系、运行环境的基础镜像描述文件、服务器间加密私钥或密码等版本配置文件、源代码文件,根据依赖文件及依赖关系生成依赖描述文件。其中,依赖描述文件描述了依赖的下载地址和依赖关系。
77.步骤s130,将所述解析文件压缩,将压缩得到的压缩解析文件上传到预设的局域网仓库,触发所述局域网仓库下载对应的项目资源项;
78.具体地,为保证上传到局域网仓库的速度,将上述得到的解析文件压缩后再上传,根据所述压缩解析文件下载对应的项目资源项到所述局域网仓库中,所述压缩的工具为现有技术,在此不展开讨论。所述预设的局域网仓库包括镜像仓库、版本配置仓库、依赖仓库,将所述依赖描述文件和所述源代码文件压缩后上传到所述依赖仓库;将所述基础镜像描述文件上传到所述镜像仓库;将所述版本配置文件压缩后上传到所述版本配置仓库。
79.步骤s140,发送所述项目的升级指令到服务器端,以供所述服务器端根据所述升级指令,从所述预设的局域网仓库中获取压缩解析文件并解压缩,得到解压缩的解析文件;根据解压缩的解析文件,从所述预设的局域网仓库中下载对应的项目资源项;根据所述项目资源项构建所述项目的镜像并部署。
80.具体地,发送所述项目的升级指令到服务器端,服务器端接收到请求指令后根据所述项目版本从镜像仓库、版本配置仓库、依赖仓库中分别获取对应的压缩文件并解压,得到依赖描述文件、基础镜像描述文件、版本配置文件,根据依赖描述文件和基础镜像描述文件,从局域网仓库中下载需要的依赖文件、源代码文件、基础镜像,从而构建项目镜像,将所述项目镜像生成容器部署到服务器上,完成项目升级。
81.本实施例通过上述方案,具体通过获取项目的文件包;对所述项目的文件包进行解析,生成项目的解析文件;将所述解析文件压缩,将压缩得到的压缩解析文件上传到预设的局域网仓库,触发所述局域网仓库下载对应的项目资源项;发送所述项目的升级指令到服务器端,以供所述服务器端根据所述升级指令,从预设的局域网仓库中获取所述压缩解析文件并解压缩,得到解压缩的解析文件;根据解压缩的解析文件,从所述预设的局域网仓库中下载对应的项目资源项;根据所述项目资源项构建所述项目的镜像并部署。基于本方
案,通过将项目解析为多个部分,然后上传解析文件到局域网仓库中,再通过客户端发送指令控制所述服务器,从预设的局域网仓库下载解析文件,进而下载所需项目的资源项,生成项目的镜像并部署,优化了项目升级时镜像的体积,避免了大体积业务镜像在局域网传输造成的业务阻塞问题,达到了高效地升级项目镜像的效果。
82.进一步地,参照图3,图3为项目镜像体积的优化方法第二示例性实施例的流程示意图,所述对所述项目的文件包进行解析,生成项目的解析文件的步骤包括:
83.步骤s1201,依次判断所述项目的文件包中工程是否存在上一个版本,得到判断结果;
84.具体地,若所述项目中的工程有多个,依次判断项目中的工程是否具有上一个版本。
85.步骤s1202,根据所述判断结果和所述项目的文件包中工程生成工程解析文件;
86.具体地,若存在上一个版本,则将所述工程的版本与所述工程的上一个版本解析后进行对比,得到所述工程的新增信息项;若不存在上一个版本,则解析得到所述工程的信息项。
87.步骤s1203,当所述项目的文件包中工程依次解析完成时,根据所述工程解析文件生成所述项目的解析文件,所述项目的解析文件包括依赖描述文件、基础镜像描述文件、源代码文件、版本配置文件。
88.具体地,将项目的工程依次解析后,得到工程的解析文件为工程的新增信息项或工程的信息项,具体包括新增依赖项或依赖项、依赖关系、源代码文件、运行环境的基础镜像描述文件。根据当前项目下所有工程的新增依赖项或依赖项、依赖关系生成项目的依赖描述文件、根据运行环境的基础镜像生成项目基础镜像描述文件,再结合解析出来的工程源代码文件和项目配置的服务器间加密私钥等版本配置信息,生成项目的依赖描述文件、基础镜像描述文件、源代码文件、版本配置文件。
89.本实施例通过上述方案,具体通过依次判断所述项目的文件包中工程是否存在上一个版本,得到判断结果;根据所述判断结果和所述项目的文件包中工程生成工程解析文件;当所述项目的文件包中工程依次解析完成时,根据所述工程解析文件生成所述项目的解析文件,所述项目的解析文件包括依赖描述文件、基础镜像描述文件、源代码文件、版本配置文件。基于本方案,通过判断项目中的工程是否有上一个版本,依据新增信息项得到新增基础镜像描述文件和/或新增依赖描述文件和源代码文件或完整的依赖描述文件、基础镜像描述文件、源代码文件、版本配置文件。达到了将项目进行拆分,为将项目构建镜像及部署需要的资源项上传到仓库的目的,并通过判断工程是否有上一个版本,从而只需要将新增的信息项筛选出来生成对应的基础镜像描述文件和/或依赖描述文件,避免了无用的信息项传输,为后续升级项目减少镜像体积提供了便利。
90.进一步地,参照图4,图4为项目镜像体积的优化方法第三示例性实施例的流程示意图,所述工程解析文件包括工程的新增信息项和/或信息项、源代码文件、依赖关系,所述根据所述判断结果和所述项目的文件包中工程生成工程解析文件的步骤包括:
91.步骤s12021,若存在上一个版本,则将所述工程的版本与所述工程的上一个版本解析后进行对比,得到所述工程的新增信息项;
92.具体地,若存在上一个版本,则需要将项目工程版本与上一个版本做对比,找出更
新项,避免后续下载之前存在的项目资源项,将所述工程的版本与所述工程的上一个版本解析后对比,生成新增信息项和源代码文件。其中,源代码文件包括了语言依赖的源代码文件和业务源代码文件;新增信息项主要包括新增的依赖文件及依赖关系和/或新增基础镜像描述文件,其中基础镜像描述文件主要记录了当前依赖的环境镜像版本,新增的依赖文件主要记载了所述工程需要的更新的插件、编程语言对应依赖的源代码文件等下载地址。
93.步骤s12022,若不存在上一个版本,则解析得到所述工程的信息项。
94.具体地,若不存在上一个版本,则需要生成源代码文件和根据工程完整的依赖项及依赖关系生成工程的依赖描述文件等,此处的源代码文件包括了语言依赖的源代码文件和业务源代码文件。
95.本实施例通过上述方案,具体通过若存在上一个版本,则将所述工程的版本与所述工程的上一个版本解析后进行对比,得到所述工程的新增信息项;若不存在上一个版本,则解析得到所述工程的信息项。基于本方案,通过判断工程是否有上一个版本,从而只需要将项目之前没有的信息项筛选出来,生成对应的基础镜像描述文件和/或依赖描述文件,避免了无用的信息项传输,为后续升级项目减少镜像体积提供了便利。
96.进一步地,参照图5,图5为项目镜像体积的优化方法第四示例性实施例的流程示意图,所述预设的局域网仓库包括镜像仓库、版本配置仓库、依赖仓库,所述将所述解析文件压缩,将压缩得到的压缩解析文件上传到预设的局域网仓库,触发所述局域网仓库下载对应的项目资源项的步骤包括:
97.步骤s1301,将所述依赖描述文件和所述源代码文件压缩后上传到所述依赖仓库;
98.具体地,压缩所述依赖描述文件和所述源代码文件,缩小了文件体积,避免上传时导致业务阻塞。
99.步骤s1302,将所述基础镜像描述文件上传到所述镜像仓库;
100.具体地,基础镜像描述文件记录了业务代码运行需要的环境镜像及版本等。
101.步骤s1303,将所述版本配置文件压缩后上传到所述版本配置仓库;
102.本实施例通过上述方案,具体通过将所述依赖描述文件和所述源代码文件压缩后上传到所述依赖仓库;将所述基础镜像描述文件上传到所述镜像仓库;将所述版本配置文件压缩后上传到所述版本配置仓库基于本方案,通过对项目的解析文件上传将一个大的项目拆解为多个部分,从而为后续从局域网下载项目资源项,构建项目镜像做准备,避免了后续获取项目镜像的体积过大导致局域网业务阻塞的问题。
103.进一步地,参照图6,图6为项目镜像体积的优化方法第五示例性实施例的流程示意图,应用于局域网仓库,所述项目镜像体积的优化方法还包括以下步骤:
104.步骤s1305,接收从客户端上传的压缩解析文件;
105.步骤s1306,根据所述压缩解析文件下载对应的项目资源项。
106.具体地,在完成基础镜像描述文件、所述依赖描述文件上传后,根据上传的解析文件将需要从外部网络下载的依赖文件和基础镜像下载到对应的仓库中,为后续从局域网下载项目资源项,构建项目镜像做准备。
107.本实施例通过上述方案,具体通过接收从客户端上传的压缩解析文件;根据所述压缩解析文件下载对应的项目资源项。基于本方案,将项目对应版本所需要的基础镜像和依赖文件提前从外部网络下载到局域网仓库,为后续从局域网下载项目资源项,构建项目
镜像做准备。
108.进一步地,参照图7,图7为项目镜像体积的优化方法第六示例性实施例的流程示意图,应用于服务器端,所述项目镜像体积的优化方法还包括以下步骤:
109.步骤s1400,接收客户端发送的项目的升级指令;
110.具体地,所述项目升级指令告知服务器所需要生成的项目及版本、版本配置仓库。
111.步骤s1401,根据所述升级指令,从所述预设的局域网仓库中获取压缩解析文件并解压缩,得到解压缩的解析文件;
112.具体地,完成上述准备工作后,将所述项目升级的指令发送到需要构建镜像的服务器,服务器接收到指令后从镜像仓库、版本配置仓库、依赖仓库中获取源代码文件、基础镜像描述文件、版本配置文件、依赖描述文件并解压缩。
113.步骤s1402,根据解压缩的解析文件,从所述预设的局域网仓库中下载对应的项目资源项;
114.具体地,根据解压缩的解析文件,具体包括基础镜像描述文件、版本配置文件、依赖描述文件,从局域网仓库中下载需要的依赖文件、基础镜像源代码文件,当项目存在上一个版本时,下载的解析文件在客户端是根据项目的最新版本和上一个版本对比后生成的,因此,通过解析文件构建镜像时,没有项目之前架构中已经存在的资源项,基础镜像描述文件、依赖描述文件只下载更新的项目资源项。
115.步骤s1403,根据所述项目资源项构建所述项目的镜像并部署。
116.具体地,根据所述项目资源项构建在服务器上构建所述项目的镜像,构建镜像的服务器可以是接收客户端发送指令的服务器,也可以是项目所在集群上的任一服务器,具体根据发送指令决定,当所述项目存在上一个版本时,则将所述项目的依赖文件注入到所述项目的架构中。
117.本实施例通过上述方案,具体通过接收客户端发送的项目的升级指令;根据所述升级指令,从预设的局域网仓库中获取压缩解析文件并解压缩,得到解压缩的解析文件;根据解压缩的解析文件,从所述预设的局域网仓库中下载对应的项目资源项;根据所述项目资源项构建所述项目的镜像并部署。基于本方案,通过从局域网下载项目所需的资源文件,从而实现将项目拆解后在服务器端完成镜像构建的目的,避免了项目镜像在局域网传输体积过大导致的业务阻塞问题,提高了项目镜像升级的效率。
118.进一步地,参照图8,图8为项目镜像体积的优化方法第七示例性实施例的流程示意图,所述根据解压缩的解析文件,从所述预设的局域网仓库中下载对应的项目资源项的步骤包括:
119.步骤s14021,根据解压缩后的解析文件中的依赖描述文件,从所述依赖仓库下载所述项目的依赖文件;和/或
120.具体地,当未获取到依赖描述文件,则说明项目的上一个版本与当前版本没有新增依赖项,如果有,则需要根据解压缩后的解析文件中的依赖描述文件,从所述依赖仓库下载所述项目的依赖文件步骤。
121.步骤s14022,根据解压缩后的解析文件中的基础镜像描述文件,从所述镜像仓库下载所述项目的基础镜像。
122.具体地,当未获取到基础镜像描述文件,则说明项目的上一个版本与当前版本没
有新增基础镜像,如果有,则需要根据解压缩后的基础镜像描述文件,从所述镜像仓库下载所述项目的基础镜像。
123.本实施例通过上述方案,具体通过根据解压缩后的解析文件中的依赖描述文件,从所述依赖仓库下载所述项目的依赖文件;和/或根据解压缩后的解析文件中的基础镜像描述文件,从所述镜像仓库下载所述项目的基础镜像;将所述项目的依赖文件注入到所述项目的架构中。基于本方案,通过接收客户端发送的指令,并下载项目解析文件,从而根据项目解析文件在服务器下载所述项目资源项,构建出项目镜像,将项目拆解成多个部分,对项目架构之前存在的文件则无需下载,避免了项目镜像体积过大在局域网传输导致的业务阻塞问题,提高了升级项目镜像的效率。
124.此外,本技术实施例还提出一种项目镜像体积的优化系统,所述项目镜像体积的优化系统包括:
125.所述客户端,用于获取项目的文件包;对所述项目的文件包进行解析,生成项目的解析文件;将所述解析文件压缩,将压缩得到的压缩解析文件上传到预设的局域网仓库,触发所述局域网仓库下载对应的项目资源项;发送所述项目的升级指令到服务器端,以供所述服务器端根据所述升级指令,从所述预设的局域网仓库中获取压缩解析文件并解压缩,得到解压缩的解析文件;根据解压缩的解析文件,从所述预设的局域网仓库中下载对应的项目资源项;根据所述项目资源项构建所述项目的镜像并部署;
126.所述局域网仓库,用于接收从客户端上传的压缩解析文件;根据所述压缩解析文件下载对应的项目资源项;
127.所述服务器端,用于接收客户端发送的项目的升级指令;根据所述升级指令,从所述预设的局域网仓库中获取压缩解析文件并解压缩,得到解压缩的解析文件;根据解压缩的解析文件,从所述预设的局域网仓库中下载对应的项目资源项;根据所述项目资源项构建所述项目的镜像并部署。
128.此外,本技术实施例还提出一种终端设备,所述终端设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的项目镜像体积的优化程序,所述项目镜像体积的优化程序被所述处理器执行时实现所述项目镜像体积的优化方法的步骤。
129.由于本项目镜像体积的优化程序被处理器执行时,采用了前述所有实施例的全部技术方案,因此至少具有前述所有实施例的全部技术方案所带来的所有有益效果,在此不再一一赘述。
130.此外,本技术实施例还提出一种存储介质,所述存储介质上存储有项目镜像体积的优化程序,所述项目镜像体积的优化程序被处理器执行时实现所述项目镜像体积的优化方法的步骤。
131.由于本项目镜像体积的优化程序被处理器执行时,采用了前述所有实施例的全部技术方案,因此至少具有前述所有实施例的全部技术方案所带来的所有有益效果,在此不再一一赘述。
132.需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该
要素的过程、方法、物品或者系统中还存在另外的相同要素。
133.上述本技术实施例序号仅仅为了描述,不代表实施例的优劣。
134.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,被控终端,或者网络终端设备等)执行本技术每个实施例的方法。
135.以上仅为本技术的优选实施例,并非因此限制本技术的专利范围,凡是利用本技术说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本技术的专利保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1