一种软件包快速部署管理容器化应用方法与流程

文档序号:37301223发布日期:2024-03-13 20:49阅读:14来源:国知局
一种软件包快速部署管理容器化应用方法与流程

本发明涉及软件运营维护开发,尤其涉及一种软件包快速部署管理容器化应用方法。


背景技术:

1、容器部署在国内是较常用的部署方式,简单的应用通常是以docker部署的单个应用。在涉及到较复杂依赖场景,需要同时部署多个应用,应用启停需要有先后顺序的时候,中小型项目则需要使用docker compose这类容器管理工具管理。使用此工具需要手工编辑配置文件,要求部署人员非常熟悉此工具的配置和应用间的依赖关系启停顺序,对人员要求较高,通常只能由研发运维人员介入部署操作。如需要按需部署部分应用时通常需要耗费很长时间处理。


技术实现思路

1、有鉴于此,本发明的目的在于提出一种软件包快速部署管理容器化应用方法,以解决现有技术对人员要求较高、按需部署部分应用时耗时长的问题。

2、基于上述目的,本发明提供了一种软件包快速部署管理容器化应用方法,包括

3、建立容器化应用软件包;

4、建立软件包仓库,包括软件包索引文件和软件包文件;所述软件包索引文件包含有软件包文件的信息;

5、获取软件包索引文件,识别可安装或升级的软件包文件;

6、检索软件包索引文件查询搜索可安装的软件包文件信息;

7、获取软件包文件的下载地址,从软件包仓库下载软件包文件,并执行软件包文件内置脚本安装;

8、安装完成后结束管理。

9、作为本申请的进一步改进,所述软件包文件的信息包括软件包名、软件版本、软件打包迭代数字、软件安装前需要安装就绪的软件包名列表和容器化应用软件包运行所需要的数据文件。

10、作为本申请的进一步改进,所述容器化应用软件包运行所需要的数据文件包括镜像地址、软件运行中间件初始化数据文件和软件安装过程执行的脚本文件。

11、作为本申请的进一步改进,所述软件包文件中包含有定义如何检查软件是否正常运行的程序,所述定义如何检查软件是否正常运行的程序为检查软件是否运行、特定的接口是否可用、软件运行起来自动创建的文件是否存在。

12、作为本申请的进一步改进,所述软件包文件采用两种架构制作两个版本;

13、两种所述架构分别为x86_64架构和arm64架构,安装时,先检测系统cpu架构,安装架构与系统cpu架构相同的软件包文件。

14、作为本申请的进一步改进,所述软件包仓库还包括仓库运行程序,用于监控软件包仓库是否有文件变更;所述软件包仓库还设有定时任务,每间隔一段时间检查是否存在该文件,如存在且文件内容的时间晚于上次索引开始的时间时,则更新索引文件;开始索引前会创建一个锁文件,如果锁文件存在则表示有任务在进行中不允许新的索引任务运行,索引完成后删除此锁文件表示允许新索引任务运行;索引定时任务如果发现需要重新索引但存在锁文件时间时则跳过此轮索引待后续间隔周期内再重新发起。

15、作为本申请的进一步改进,在需要在服务器上部署应用时,添加软件包仓库地址到服务器的包管理工具的配置文件中;使用服务器的包管理工具拉取所述软件包索引文件到本地便于快速查询;

16、通过包管理工具获取到支持且符合当前服务器的cpu架构的软件包文件列表;使用包管理工具安装需要的软件包文件,在执行安装时会从所述软件包索引文件中查询对应到所述软件包仓库中的软件包文件地址并下载到本地缓存文件夹中,并将软件包文件安装/卸载阶段用到的脚本文件统一提取到统一的目录下,在安装应用或卸载应用时依次调用这些脚本完成安装/卸载。

17、作为本申请的进一步改进,在拉取更新的所述软件包索引文件后,自动检查软件包仓库中支持的软件包文件版本和本地已经安装的软件包文件版本,如果软件包仓库中存在更新的软件包文件时,提示用户有应用可以升级版本。

18、作为本申请的进一步改进,安装软件包文件时会依次执行安装前置脚本,安装执行脚本,安装后置脚本;在安装前置脚本中检查依赖的服务或中间件是否安装或运行,不满足则直接不执行安装操作;在安装执行脚本中统一处理软件包文件中文件到指定位置;在安装后置脚本中执行软件包文件运行前的初始化,软件包文件的启动执行操作;在安装使用多个软件包文件组成的复杂系统时,在安装后置脚本中需要隔一段时间检查一下软件包文件是否正常运行,若指定的最大检测次数内软件包文件仍未正常启动则安装失败,需要排查原因优化软件包文件,如软件正常启动才算软件包文件安装成功;

19、在卸载软件包文件时会依次执行卸载前置脚本,卸载执行脚本,卸载后置脚本;在卸载前置脚本中停止本软件包文件;在卸载执行脚本中统一删除安装到指定位置的软件包文件;在后置处理脚本中简化设计调用空脚本执行空操作。

20、本发明的有益效果:

21、使用软件包方式部署简化了应用部署和后续维护升级。自适应部署方式支持多种部署运行环境,统一适配不同的部署方式,可以针对不同的应用场景和用户尤其是商业用户选择而采取不同部署方式。需要部署的时候只需要在部署的服务器执行系统的包管理工具下载安装软件包即可快速安装运行依赖的应用和所需的自身应用。

22、通过建立容器化应用软件包和软件包仓库,需要安装软件时,直接从软件包仓库中获取软件包索引文件和软件包文件,进一步自动安装,安装自动化高,对人员要求较低,并且能够快速安装。



技术特征:

1.一种软件包快速部署管理容器化应用方法,其特征在于,包括

2.根据权利要求1所述的软件包快速部署管理容器化应用方法,其特征在于,所述软件包文件的信息包括软件包名、软件版本、软件打包迭代数字、软件安装前需要安装就绪的软件包名列表和容器化应用软件包运行所需要的数据文件。

3.根据权利要求2所述的软件包快速部署管理容器化应用方法,其特征在于,所述容器化应用软件包运行所需要的数据文件包括镜像地址、软件运行中间件初始化数据文件和软件安装过程执行的脚本文件。

4.根据权利要求1所述的软件包快速部署管理容器化应用方法,其特征在于,所述软件包文件中包含有定义如何检查软件是否正常运行的程序,所述定义如何检查软件是否正常运行的程序为检查软件是否运行、特定的接口是否可用、软件运行起来自动创建的文件是否存在。

5.根据权利要求1所述的软件包快速部署管理容器化应用方法,其特征在于,所述软件包文件采用两种架构制作两个版本;

6.根据权利要求1所述的软件包快速部署管理容器化应用方法,其特征在于,所述软件包仓库还包括仓库运行程序,用于监控软件包仓库是否有文件变更;

7.根据权利要求1所述的软件包快速部署管理容器化应用方法,其特征在于,在需要在服务器上部署应用时,添加软件包仓库地址到服务器的包管理工具的配置文件中;使用服务器的包管理工具拉取所述软件包索引文件到本地便于快速查询;

8.根据权利要求7所述的软件包快速部署管理容器化应用方法,其特征在于,在拉取更新的所述软件包索引文件后,自动检查软件包仓库中支持的软件包文件版本和本地已经安装的软件包文件版本,如果软件包仓库中存在更新的软件包文件时,提示用户有应用可以升级版本。

9.根据权利要求7所述的软件包快速部署管理容器化应用方法,其特征在于,安装软件包文件时会依次执行安装前置脚本,安装执行脚本,安装后置脚本;在安装前置脚本中检查依赖的服务或中间件是否安装或运行,不满足则直接不执行安装操作;在安装执行脚本中统一处理软件包文件中文件到指定位置;在安装后置脚本中执行软件包文件运行前的初始化,软件包文件的启动执行操作;在安装使用多个软件包文件组成的复杂系统时,在安装后置脚本中需要隔一段时间检查一下软件包文件是否正常运行,若指定的最大检测次数内软件包文件仍未正常启动则安装失败,需要排查原因优化软件包文件,如软件正常启动才算软件包文件安装成功;


技术总结
本发明涉及软件运营维护开发技术领域,具体涉及一种软件包快速部署管理容器化应用方法,为解决现有技术对人员要求较高、按需部署部分应用时耗时长的问题。该软件包快速部署管理容器化应用方法,包括建立容器化应用软件包;建立软件包仓库,包括软件包索引文件和软件包文件;所述软件包索引文件包含有软件包文件的信息;获取软件包索引文件,识别可安装或升级的软件包文件;检索软件包索引文件查询搜索可安装的软件包文件信息;获取软件包文件的下载地址,从软件包仓库下载软件包文件,并执行软件包文件内置脚本安装;安装完成后结束管理。安装自动化高,对人员要求较低,并且能够快速安装。

技术研发人员:杜渐,蔡灿,金先友,周杨,黄强,苏玉伟
受保护的技术使用者:招商新智科技有限公司
技术研发日:
技术公布日:2024/3/12
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1