本公开涉及人工智能领域中的云计算领域和云应用引擎领域,尤其涉及一种基于微服务的镜像生成方法、装置、电子设备及存储介质。
背景技术:
1、在云原生时代,微服务部署的方式由传统的服务编译产出包部署变更为镜像部署。镜像是一种特殊的文件系统,包含容器运行时所需要的程序、库、资源和配置等文件。要制造部署所需要的镜像,需要编写一定的镜像文件代码。代码的编写对用户的专业要求较高,浪费大量的人力和时间,影响镜像生成的精度和效率。
技术实现思路
1、本公开提供了一种基于微服务的镜像生成方法、装置、电子设备及存储介质。
2、根据本公开的第一方面,提供了一种基于微服务的镜像生成方法,包括:
3、响应于生成指令,获取所述生成指令所指示的微服务的程序包;其中,所述生成指令用于指示生成微服务的镜像;所述程序包中包括至少一个程序文件,所述程序文件用于表示运行微服务所需的数据;
4、根据所述微服务的程序包中的程序文件,确定所述微服务的服务类型;其中,所述服务类型用于表示微服务的运行环境;
5、根据预设的与所述微服务的服务类型对应的镜像分层规则,生成所述微服务的镜像,并将所述微服务的镜像推送到预设的镜像仓库中进行存储。
6、根据本公开的第二方面,提供了一种基于微服务的镜像生成装置,包括:
7、获取单元,用于响应于生成指令,获取所述生成指令所指示的微服务的程序包;其中,所述生成指令用于指示生成微服务的镜像;所述程序包中包括至少一个程序文件,所述程序文件用于表示运行微服务所需的数据;
8、类型确定单元,用于根据所述微服务的程序包中的程序文件,确定所述微服务的服务类型;其中,所述服务类型用于表示微服务的运行环境;
9、生成单元,用于根据预设的与所述微服务的服务类型对应的镜像分层规则,生成所述微服务的镜像,并将所述微服务的镜像推送到预设的镜像仓库中进行存储。
10、根据本公开的第三方面,提供了一种电子设备,包括:
11、至少一个处理器;以及
12、与所述至少一个处理器通信连接的存储器;其中,
13、所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本公开第一方面所述的方法。
14、根据本公开的第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行本公开第一方面所述的方法。
15、根据本公开的第五方面,提供了一种计算机程序产品,所述计算机程序产品包括计算机程序,该计算机程序被处理器执行时实现本公开第一方面所述的方法。
16、根据本公开的技术,提高了微服务镜像的生成效率和精度。
17、应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
1.一种基于微服务的镜像生成方法,包括:
2.根据权利要求1所述的方法,其中,所述响应于生成指令,获取所述生成指令所指示的微服务的程序包,包括:
3.根据权利要求2所述的方法,还包括:
4.根据权利要求3所述的方法,其中,所述程序包拉取方式为从预设的拉包地址中拉取程序包;
5.根据权利要求1-4中任一项所述的方法,还包括:
6.根据权利要求1所述的方法,其中,所述根据预设的与所述微服务的服务类型对应的镜像分层规则,生成所述微服务的镜像,包括:
7.根据权利要求6所述的方法,其中,所述根据与所述微服务的服务类型对应的镜像分层规则,生成所述微服务的镜像层数据,包括:
8.根据权利要求7所述的方法,其中,所述镜像层为软件包配置层;所述软件包配置层中包括用户选择配置的软件包;
9.根据权利要求6所述的方法,其中,所述根据所述微服务的镜像层数据,得到所述微服务的镜像,包括:
10.根据权利要求1-9中任一项所述的方法,还包括:
11.根据权利要求10所述的方法,其中,所述待部署微服务的镜像为至少两个;
12.一种基于微服务的镜像生成装置,包括:
13.根据权利要求12所述的装置,其中,所述获取单元,包括:
14.根据权利要求13所述的装置,还包括:
15.根据权利要求14所述的装置,其中,所述程序包拉取方式为从预设的拉包地址中拉取程序包;
16.根据权利要求12-15中任一项所述的装置,还包括:
17.根据权利要求12所述的装置,其中,所述生成单元,包括:
18.根据权利要求17所述的装置,其中,所述镜像层生成模块,包括:
19.根据权利要求18所述的装置,其中,所述镜像层为软件包配置层;所述软件包配置层中包括用户选择配置的软件包;
20.根据权利要求17所述的装置,其中,所述镜像生成模块,包括:
21.根据权利要求12-20中任一项所述的装置,还包括:
22.根据权利要求21所述的装置,其中,待部署微服务的镜像为至少两个;
23.一种电子设备,包括:
24.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-11中任一项所述的方法。
25.一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现权利要求1-11中任一项所述方法的步骤。