一种可快速搭建多套运行环境的方法技术

技术编号:31794922 阅读:11 留言:0更新日期:2022-01-08 10:54
本发明专利技术公开了一种可快速搭建多套运行环境的方法,包括构架师搭建产品的构件方案、开发者构建镜像,执行部署任务,开发者构建镜像,执行部署任务包括步骤:第一步将产品组件的源代码文件集成到构建方案中;第二步将各系统组件的构建逻辑,封装到构建方案的脚本文件中;第三步在构建方案中添加项目,封装部署逻辑,项目中针对选用的镜像部署服务组织部署编排文件,利用部署服务提供的内网管理的基础能力,将系统复杂的网络拓扑直接记录到编排文件中;第四步开发人员获取整个构建方案的源代码后,直接运行部署任务及其它依赖任务。本发明专利技术具有反馈速度快,提升开发效率,提高交付产品的质量,减少了文档的编辑工作,提升了产品的维护性。维护性。维护性。

【技术实现步骤摘要】
一种可快速搭建多套运行环境的方法


[0001]本专利技术涉及软件工程
,具体来说,涉及一种可快速搭建多套运行环境的方法。

技术介绍

[0002]现有交付效率在新技术条件下阻碍开发团队提升开发效率、获得快速交付能力,主要体现以下两个方面:一方面,团队缺乏快速部署独立系统的能力,(本质是缺乏按需配置工作流的能力)。实践经验告诉我们,在软件开发过程中我们至少得有开发、测试、生产这三套环境以应对开发过程中的不同使用需求。极端情况下,部分团队都会遇到各种环境冲突问题:比如,开发环境的数据库或某个基础实例挂掉,开发人员集体等待修复;测试环境中某个服务正在接受压测,其它测试人员陷入集体等待;多个feature分支在同一套开发环境部署时,经常会产生竞争与阻塞;一方面,大家习惯于共享同一套环境的原因在于,多套环境的搭建、维护额外成本较高,虽然容器技术已经相当成熟,大部分团队还在使用传统的虚拟机技术来配置环境、部署交付物,配置一次需要花费数小时甚至数天的时间,如果配置、部署过程的自动化程度很低,导致再次配置服务器、部署/更新程序的过程,易错、低效等问题。

技术实现思路

[0003]针对相关技术中的上述技术问题,本专利技术提出一种可快速搭建多套运行环境的方法,能够克服现有技术的上述不足。
[0004]为实现上述技术目的,本专利技术的技术方案是这样实现的:一种可快速搭建多套运行环境的方法,包括以下步骤:S1:构架人员搭建、更新构建方案;S2:构架人员使用自动化工具提供的脚本能力,将构建方案中涉及到的任务步骤及逻辑关系给持久化到自动化代码中;S3:开发人员将产品组件的源代码文件集成到构建方案中;S4:将各系统组件的构建逻辑,通过构件工具封装到构建方案的脚本文件中;S5: 在构建方案中添加项目,封装部署逻辑,项目中选用镜像部署服务组织部署编排文件,利用部署服务提供的内网管理的基础能力,将系统的网络拓扑直接记录到编排文件中;S6: 开发人员获取整个构建方案的源代码后,直接运行部署任务及其它依赖任务。
[0005]更进一步的,所述S2采用maven、gradle、idea、visual studio中的project模型及构建脚本将代码集成到构建方案中。
[0006]更进一步的,所述S4构建逻辑中最终调用Docker引擎,将编译、打包好的代码包封
装到Docker 镜像中并上传到镜像registry。
[0007]更进一步的,所述S4中构建工具本身以及针对源代码的编译、打包环境也需要固化到代码中,而不要依赖本地环境。
[0008]更进一步的,所述S6通过传入本地部署服务地址或其它默认配置方案,将系统部署到本地或其它指定的容器运行环境进行系统的开发、调试。
[0009]本专利技术的有益效果:通过结合使用自动化工具、容器技术、容器部署服务,结合实践经验,借助DevOps思想的系统化思考视角,对开发过程进行建模、重构,整理出一套高效的可快速搭建多套运行环境的方法,极大的增加了开发过程的灵活性,实现了工作流程可随时按需配置的能力,可搭建出各种高效的工作流程,加快开发过程及生产环境中出现问题后的反馈速度,提升开发效率,提高交付产品的质量,有效的提升了团队间的协作能力、减少了文档的编辑工作、降低了人员熟悉产品项目的复杂性、提升了产品的维护性。
附图说明
[0010]为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0011]图1是根据本专利技术实施例所述的可快速搭建多套运行环境的方法的交付过程概览图。
[0012]图2是根据本专利技术实施例所述的可快速搭建多套运行环境的方法的交付过程流程图。
具体实施方式
[0013]下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本专利技术保护的范围。
[0014]如图1

2所示,根据本专利技术实施例所述的一种可快速搭建多套运行环境的方法,包括以下步骤:S1:构架人员搭建、更新构建方案;S2:构架人员使用自动化工具提供的脚本能力,将构建方案中涉及到的任务步骤及逻辑关系给持久化到自动化代码中;S3:开发人员将产品组件的源代码文件集成到构建方案中;S4:将各系统组件的构建逻辑,通过构件工具封装到构建方案的脚本文件中;S5: 在构建方案中添加项目,封装部署逻辑,项目中选用镜像部署服务组织部署编排文件,利用部署服务提供的内网管理的基础能力,将系统的网络拓扑直接记录到编排文件中;S6: 开发人员获取整个构建方案的源代码后,直接运行部署任务及其它依赖任务。
[0015]在具体实施实例中,所述S2采用maven、gradle、idea、visual studio中的project模型及构建脚本将代码集成到构建方案中。
[0016]在具体实施实例中,所述S4构建逻辑中最终调用Docker引擎,将编译、打包好的代码包封装到Docker 镜像中并上传到镜像registry。
[0017]在具体实施实例中,所述S4中构建工具本身以及针对源代码的编译、打包环境也需要固化到代码中,而不要依赖本地环境。
[0018]在具体实施实例中,所述S6通过传入本地部署服务地址或其它默认配置方案,将系统部署到本地或其它指定的容器运行环境进行系统的开发、调试。
[0019]为了方便理解本专利技术的上述技术方案,以下通过具体使用方式上对本专利技术的上述技术方案进行详细说明。
[0020]在具体使用时,根据本专利技术所述的本方法模型中,一方面借助自动化工具(maven、gradle、idea、visual studio 等工具中的project模型及构建脚本)将代码集成到构建方案中,实现整体构建方案的代码化,相对于操作手册文档,提升操作执行效率、减少出错可能。另一方面,引入容器概念,将代码中产出的各种程序包(jar包、war包、可执行文件等),连同它们所依赖的系统环境打包进容器镜像,进一步提升执行效率的同时(镜像中实现了整个系统运行环境的自动化配置),最大限度的减少了部署程序包到不同系统环境中出错的可能。
[0021]规划好产品的系统组件后,将产品组件的源代码文件集成到构建方案中。
[0022]将各系统组件的构建逻辑,封装到构建方案的脚本文件中,构建逻辑中最终调用Docker引擎,将编译、打包好的代码包封装到Docker 镜像中并上传到镜像registry,构建工具本身以及针对源代码的编译、打包环境也需要固化到代码中,而不要依赖本地环境(参考gradle wrapper方案、Dockerfile的Multistage build方案)。尽量减少对本地系统环境的依赖,确保构建本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种可快速搭建多套运行环境的方法,其特征在于,包括以下步骤:S1:构架人员搭建、更新构建方案;S2:构架人员使用自动化工具提供的脚本能力,将构建方案中涉及到的任务步骤及逻辑关系给持久化到自动化代码中;S3:开发人员将产品组件的源代码文件集成到构建方案中;S4:将各系统组件的构建逻辑,通过构建工具封装到构建方案的脚本文件中;S5: 在构建方案中添加项目,封装部署逻辑,项目中选用镜像部署服务组织部署编排文件,利用部署服务提供的内网管理的基础能力,将系统的网络拓扑直接记录到编排文件中;S6: 开发人员获取整个构建方案的源代码后,直接运行部署任务及其它依赖任务。2.根据权利要求1所述的一种可快速搭建多套运行环境的方法,其特征在于,所述S2采用maven、...

【专利技术属性】
技术研发人员:王长福单酉刘强冀天宇邓建红刘鹰谢水庚
申请(专利权)人:北京航天云路有限公司
类型:发明
国别省市:

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

1