本发明涉及计算机,尤其涉及一种应用部署方法、装置、设备和存储介质。
背景技术:
1、开发运维(development&operations,devops)是一个非常关注开发人员、运维人员之间沟通合作的开发模型。
2、基于devops开发模型进行应用的开发以及部署主要是通过自动化方式完成测试交付流程,以便让构建、测试、发布软件能够更加快捷、频繁和可靠地进行。并且,通过合并开发和运维实践,消除隔离。但是,基于devops开发模型进行应用的开发以及部署过程中是在代码提交之后将代码进行集成,集成后进行各种测试,当合并的代码质量出现问题的时候,团队成员就需要不断的测试,不断的集成,频繁的测试和集成,加剧了人工出错的概率,导致应用部署的效率较低。
技术实现思路
1、本发明提供一种应用部署方法、装置、设备和存储介质,用以解决现有技术中应用部署的效率较低的缺陷,提高了应用部署的效率。
2、第一方面,本发明提供一种应用部署方法,该方法包括:
3、获取待部署应用的代码;
4、在确定所述待部署应用的代码的安全检测结果为合格的情况下,根据所述待部署应用的代码,构建所述待部署应用的容器镜像;
5、根据所述待部署应用的容器镜像,得到所述待部署应用对应的部署包;
6、在确定所述待部署应用的部署包的安全检测结果为合格,并且所述待部署应用的目标部署平台的安全测试结果为合格的情况下,将所述容器镜像对应的部署包在所述目标部署平台上进行部署上线。
7、可选地,所述在确定所述待部署应用的代码的安全检测结果为合格的情况下,根据所述待部署应用的代码,构建所述待部署应用的容器镜像,包括:
8、在确定所述待部署应用的代码的安全检测结果为合格的情况下,根据所述待部署应用的代码,生成所述待部署应用对应的容器镜像文件;
9、对所述待部署应用对应的容器镜像文件进行安全检测,得到所述容器镜像文件的安全检测结果;
10、在确定所述容器镜像文件的安全检测结果为合格的情况下,对检测合格的容器镜像文件添加标签信息;所述标签信息用于表征所述容器镜像文件的版本信息;
11、根据所述检测合格的容器镜像文件,构建所述待部署应用的容器镜像。
12、可选地,所述在确定所述待部署应用的部署包的安全检测结果为合格,并且所述待部署应用的目标部署平台的安全测试结果为合格的情况下,将所述容器镜像对应的部署包在所述目标部署平台上进行部署上线之前,还包括:
13、对所述待部署应用的部署包进行安全检测,得到所述待部署应用的部署包的安全检测结果;
14、在确定所述待部署应用的部署包的安全检测结果为合格的情况下,对所述待部署应用的部署包执行自动化测试,得到所述待部署应用的部署包对应的测试用例;
15、将所述待部署应用的部署包以及所述待部署应用的部署包对应的测试用例推送至版本控制库;所述版本控制库用于对至少一个版本的应用的部署包的版本信息进行管理;
16、对所述目标部署平台的部署环境进行安全测试,得到所述目标部署平台的安全测试结果。
17、可选地,所述在确定所述待部署应用的部署包的安全检测结果为合格,并且所述待部署应用的目标部署平台的安全测试结果为合格的情况下,将所述容器镜像对应的部署包在所述目标部署平台上进行部署上线,包括:
18、确定所述容器镜像对应的部署包的消息摘要md5值和所述版本控制库中所述部署包对应的消息摘要md5值的一致性结果;
19、在所述一致性结果为所述容器镜像对应的部署包的消息摘要md5值和所述版本控制库中所述部署包对应的消息摘要md5值一致的情况下,运行所述部署包对应的测试用例,根据所述部署包对应的测试用例的运行结果确定所述部署包的功能是否正常;
20、在确定所述部署包的功能为正常的情况下,根据所述部署包对应的容器镜像、预设的系统关键路径,确定所述部署包对应的容器镜像是否安全;
21、在确定所述部署包对应的容器镜像为安全的情况下,将所述部署包在所述目标部署平台上进行部署上线。
22、可选地,所述方法还包括:
23、确定所述待部署应用所在的容器配置信息是否合格,得到所述容器配置信息的安全检测结果。
24、可选地,所述方法还包括:
25、确定所述待部署应用对应的审计配置信息是否合格,得到所述审计配置信息的安全检测结果。
26、可选地,所述审计配置信息包括以下一项:审计配置文件、审计配置参数、审计网络配置、审计加密算法和安全策略的配置、审计日志记录和报警规则的设置、审计数据库配置、审计防火墙规则配置。
27、第二方面,本发明还提供一种应用部署装置,该装置包括:
28、获取模块,用于获取待部署应用的代码;
29、构建模块,用于在确定所述待部署应用的代码的安全检测结果为合格的情况下,根据所述待部署应用的代码,构建所述待部署应用的容器镜像;
30、根据所述待部署应用的容器镜像,得到所述待部署应用对应的部署包;
31、部署模块,用于在确定所述待部署应用的部署包的安全检测结果为合格,并且所述待部署应用的目标部署平台的安全测试结果为合格的情况下,将所述容器镜像对应的部署包在所述目标部署平台上进行部署上线。
32、第三方面,本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述应用部署方法。
33、第四方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述应用部署方法。
34、第五方面,本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述应用部署方法。
35、本发明提供的一种应用部署方法、装置、设备和存储介质,通过获取待部署应用的代码;然后,在确定待部署应用的代码的安全检测结果为合格的情况下,根据待部署应用的代码,构建待部署应用的容器镜像;进而,根据待部署应用的容器镜像,得到待部署应用对应的部署包;最后,在确定待部署应用的部署包的安全检测结果为合格,并且待部署应用的目标部署平台的安全测试结果为合格的情况下,将容器镜像对应的部署包在目标部署平台上进行部署上线。
36、本发明实施例提供的方法中,因在确定待部署应用的代码的安全检测结果为合格的情况下,构建待部署应用的容器镜像,此外,在确定待部署应用的部署包的安全检测结果为合格,并且待部署应用的目标部署平台的安全测试结果为合格的情况下,将容器镜像对应的部署包在目标部署平台上进行部署上线,在应用部署的各个环节中增加安全测试环节,在安全测试结果合格的情况下进行应用部署,降低了应用部署过程中出错的几率,提高了应用部署的效率。
1.一种应用部署方法,其特征在于,包括:
2.根据权利要求1所述的应用部署方法,其特征在于,所述在确定所述待部署应用的代码的安全检测结果为合格的情况下,根据所述待部署应用的代码,构建所述待部署应用的容器镜像,包括:
3.根据权利要求1所述的应用部署方法,其特征在于,所述在确定所述待部署应用的部署包的安全检测结果为合格,并且所述待部署应用的目标部署平台的安全测试结果为合格的情况下,将所述容器镜像对应的部署包在所述目标部署平台上进行部署上线之前,还包括:
4.根据权利要求3所述的应用部署方法,其特征在于,所述在确定所述待部署应用的部署包的安全检测结果为合格,并且所述待部署应用的目标部署平台的安全测试结果为合格的情况下,将所述容器镜像对应的部署包在所述目标部署平台上进行部署上线,包括:
5.根据权利要求1-4任一项所述的应用部署方法,其特征在于,所述方法还包括:
6.根据权利要求1-4任一项所述的应用部署方法,其特征在于,所述方法还包括:
7.根据权利要求6所述的应用部署方法,其特征在于, 所述审计配置信息包括以下一项:审计配置文件、审计配置参数、审计网络配置、审计加密算法和安全策略的配置、审计日志记录和报警规则的设置、审计数据库配置、审计防火墙规则配置。
8.一种应用部署装置,其特征在于,包括:
9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7任一项所述应用部署方法。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述应用部署方法。