一种基于docker的平台系统部署升级方法及系统技术方案

技术编号:24937291 阅读:24 留言:0更新日期:2020-07-17 20:48
本发明专利技术涉及软件技术领域,公开了一种基于docker的平台系统部署升级方法及系统,用以解决已有的平台系统升级部署所存在的多节点持久化统一配置文件问题。本发明专利技术的方案如下:平台的配置文件需通过网络挂载于NFS服务器,当平台接收到升级包之后,首先停止并删除所有承载平台业务的docker容器,根据平台当前版本号删除docker镜像仓库中平台当前版本号所对应的docker镜像;之后使用升级包内平台业务源码构建docker镜像,并将docker镜像推送到docker镜像仓库;更新平台配置文件时,将NFS服务器挂载文件夹下的应用程序所需配置文件替换,最后创建并启动所有平台docker容器。本发明专利技术适用于平台的系统部署升级。

【技术实现步骤摘要】
一种基于docker的平台系统部署升级方法及系统
本专利技术涉及软件
,特别涉及一种基于docker的平台系统部署升级方法及系统。
技术介绍
Docker是一个开源的应用容器引擎,基于Go语言并遵从Apache2.0协议开源。Docker可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化。Docker可以让交付运行环境如同海运,OS如同一个货轮,每一个在OS基础上的软件都如同一个集装箱,用户可以通过标准化手段自由组装运行环境,同时集装箱的内容可以由用户自定义,也可以由专业人员制造。这样,交付一个软件,就是一系列标准化组件的集合的交付,如同乐高积木,用户只需要选择合适的积木组合,并且在最顶端署上自己的名字(最后一个标准化组件是用户的app)。平台已有的系统升级方案中,升级包为压缩包上传,可被任何人解压修改;推送镜像到docker私有仓库;容器的配置文件和需要持久化的文件通过命令挂载在宿主机上。这种技术的缺点是,启动大量docker容器时,如果挂载很多目录在服务器上难于管理,同时这种持久化方式无法被其他节点上的容器使用。另外,应用程序升级包的安全性没有得到很好的保证,容器的镜像仓库不支持权限管理,从而导致镜像被非法提交产生的安全性的问题。
技术实现思路
本专利技术要解决的技术问题是:提出一种基于docker的平台系统部署升级方法及系统,用以解决多节点持久化统一配置文件的问题。为解决上述问题,本专利技术采用的技术方案是:一种基于docker的平台系统部署升级系统,包括升级控制模块、docker镜像仓库以及NFS服务器;其中:所述docker镜像仓库用于存储各个版本的平台docker镜像;所述NFS服务器用于通过网络挂载平台配置文件。NFS就是NetworkFileSystem的缩写,它最大的功能就是可以通过网络,让不同的机器、不同的操作系统可以共享彼此的文件。NFS服务器统一保存所有容器的配置文件,应用程序容器可以通过NFS客户端进行容器挂载获取,从而解决多节点持久化统一配置文件的问题。当平台接收到升级包之后,所述升级控制模块用于:停止并删除所有承载平台业务的docker容器,并通过平台版本文件获取平台当前版本号,根据平台当前版本号删除docker镜像仓库中平台当前版本号所对应的docker镜像;并使用升级包内平台业务源码构建docker镜像,并将构建的docker镜像推送到docker镜像仓库中;更新平台配置文件时,将NFS服务器挂载文件夹下的应用程序所需配置文件替换,配置文件替换完之后,创建并启动所有平台docker容器。进一步的,为了保证升级包的安全性,平台接收到的升级包为通过对称加密的升级包。对称加密是需要对加密和解密使用相同密钥的加密算法。由于其速度快,对称性加密通常在消息发送方需要加密大量数据时使用。对称性加密也称为密钥加密。进一步的,所述docker镜像可以是具有权限管理的docker镜像仓库,镜像仓库具有权限管理,提交镜像需要管理员权限,可保证应用程序容器镜像的安全,防止镜像存在恶意漏洞。基于以上系统,一种基于docker的平台系统部署升级方法如下:当平台接收到升级包之后,首先停止并删除所有承载平台业务的docker容器,并通过平台版本文件获取平台当前版本号,根据平台当前版本号删除docker镜像仓库中平台当前版本号所对应的docker镜像;之后使用升级包内平台业务源码构建docker镜像,并将构建的docker镜像推送到docker镜像仓库中;更新平台配置文件时,将NFS服务器挂载文件夹下的应用程序所需配置文件替换,最后创建并启动所有平台docker容器。本专利技术的有益效果是:本专利技术通过NFS服务器统一保存所有容器的配置文件,应用程序容器可以通过NFS客户端进行容器挂载获取,解决了多节点持久化统一配置文件的问题。且本专利技术中升级包通过对称加密算法加密解密升级包,保证升级包的安全性。docker镜像仓库具有权限管理,提交镜像需要管理员权限,保证应用程序容器镜像的安全,防止镜像存在恶意漏洞。具体实施方式为了解决平台已有的系统升级部署所存在的多节点持久化统一配置文件问题,本专利技术提供了一种基于docker的平台系统部署升级系统,包括升级控制模块、docker镜像仓库以及NFS服务器;其中:所述docker镜像仓库用于存储有各个版本的平台docker镜像;并且,docker镜像可以进一步是具有权限管理的docker镜像仓库,镜像仓库具有权限管理,提交镜像需要管理员权限,可保证应用程序容器镜像的安全,防止镜像存在恶意漏洞;所述NFS服务器用于通过网络挂载平台配置文件。NFS就是NetworkFileSystem的缩写,它最大的功能就是可以通过网络,让不同的机器、不同的操作系统可以共享彼此的文件。NFS服务器统一保存所有容器的配置文件,应用程序容器可以通过NFS客户端进行容器挂载获取,从而解决多节点持久化统一配置文件的问题。当平台接收到升级包之后,所述升级控制模块用于:停止并删除所有承载平台业务的docker容器,并通过平台版本文件获取平台当前版本号,根据平台当前版本号删除docker镜像仓库中平台当前版本号所对应的docker镜像;并使用升级包内平台业务源码构建docker镜像,并将构建的docker镜像推送到docker镜像仓库中;更新平台配置文件时,将NFS服务器挂载文件夹下的应用程序所需配置文件替换,配置文件替换完之后,创建并启动所有平台docker容器。为了保证升级包的安全性,平台接收到的升级包为通过对称加密的升级包。对称加密是需要对加密和解密使用相同密钥的加密算法。由于其速度快,对称性加密通常在消息发送方需要加密大量数据时使用。对称性加密也称为密钥加密。基于以上本专利技术的系统,本专利技术还提供了一种基于docker的平台系统部署升级方法,包括:当平台接收到升级包之后,首先停止并删除所有承载平台业务的docker容器,并通过平台版本文件获取平台当前版本号,根据平台当前版本号删除docker镜像仓库中平台当前版本号所对应的docker镜像;之后使用升级包内平台业务源码构建docker镜像,并将构建的docker镜像推送到docker镜像仓库中;更新平台配置文件时,将NFS服务器挂载文件夹下的应用程序所需配置文件替换,最后创建并启动所有平台docker容器。相应的,平台接收到的升级包也可以为通过对称加密的升级包;推送docker镜像时,也可以将构建的docker镜像推送到具有权限管理的docker镜像仓库中。实施例实施例提供了一种基于docker的平台系统部署升级系统及方法,其中的系统包括管理版本模块、升级管理模块、升级控制模块、docker镜像仓库以及NFS服务器,其中所述NFS服务器用于通过网络挂载平台配置文件,平台系统部署升级方法流程如下:(1)、工程人员在Jenkin本文档来自技高网...

【技术保护点】
1.一种基于docker的平台系统部署升级方法,其特征在于,平台的配置文件需通过网络挂载于NFS服务器;当平台接收到升级包之后,首先停止并删除所有承载平台业务的docker容器,并通过平台版本文件获取平台当前版本号,根据平台当前版本号删除docker镜像仓库中平台当前版本号所对应的docker镜像;之后使用升级包内平台业务源码构建docker镜像,并将构建的docker镜像推送到docker镜像仓库中;更新平台配置文件时,将NFS服务器挂载文件夹下的应用程序所需配置文件替换,最后创建并启动所有平台docker容器。/n

【技术特征摘要】
1.一种基于docker的平台系统部署升级方法,其特征在于,平台的配置文件需通过网络挂载于NFS服务器;当平台接收到升级包之后,首先停止并删除所有承载平台业务的docker容器,并通过平台版本文件获取平台当前版本号,根据平台当前版本号删除docker镜像仓库中平台当前版本号所对应的docker镜像;之后使用升级包内平台业务源码构建docker镜像,并将构建的docker镜像推送到docker镜像仓库中;更新平台配置文件时,将NFS服务器挂载文件夹下的应用程序所需配置文件替换,最后创建并启动所有平台docker容器。


2.如权利要求1所述的一种基于docker的平台系统部署升级方法,其特征在于,平台接收到的升级包为通过对称加密的升级包。


3.如权利要求1或2所述的一种基于docker的平台系统部署升级方法,其特征在于,将构建的docker镜像推送到具有权限管理的docker镜像仓库中。


4.一种基于docker的平台系统部署升级系统,其特征在于,包括升级控制...

【专利技术属性】
技术研发人员:李朋超
申请(专利权)人:成都千立网络科技有限公司
类型:发明
国别省市:四川;51

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

1