[发明专利]更新容器镜像的方法、装置、设备及计算机可读存储介质在审
申请号: | 202011504901.6 | 申请日: | 2020-12-18 |
公开(公告)号: | CN112559131A | 公开(公告)日: | 2021-03-26 |
发明(设计)人: | 郑庆 | 申请(专利权)人: | 中国平安财产保险股份有限公司 |
主分类号: | G06F9/455 | 分类号: | G06F9/455;G06F8/65 |
代理公司: | 深圳市世联合知识产权代理有限公司 44385 | 代理人: | 汪琳琳 |
地址: | 518000 广东省深圳市福田区益田路*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 更新 容器 方法 装置 设备 计算机 可读 存储 介质 | ||
本申请实施例属于研发管理技术领域,涉及一种更新容器镜像的方法,包括:获取对目标应用的容器镜像中目标应用组件的升级指令;响应于所述升级指令,重启处于运行状态的所述容器镜像的容器,或者,为未启动的所述容器镜像创建对应的容器;在重启后或者新创建的所述容器的运行环境中,利用所述目标应用组件的升级文件对所述容器镜像进行更新操作。本申请还提供一种更新容器镜像的装置、计算机设备及存储介质。此外,本申请还涉及区块链技术,为进一步保证上述升级文件存储的稳定性,上述升级文件还可以存储于一区块链的节点中。
技术领域
本申请涉及研发管理技术领域,尤其涉及一种更新容器镜像的方法、装置、设备及计算机可读存储介质。
背景技术
Kubernetes是google推出的一套开源的容器集群管理系统,可以实现容器的自动化部署与运维,方便扩容与缩容,服务自我修复等功能。Kubernetes不只是支持Docker容器,它也支持其他容器。
其中,容器技术作为一种虚拟化技术,类似一种轻量化的虚拟机,通过打包了应用运行所需的所有依赖,生成该应用对应的容器镜像。之后,在需要运行应用程序时,根据相关配置文件为该容器镜像从宿主机的资源中,划分创建一个沙盒式密闭的容器,在该容器中运行应用程序,从而为该应用提供了一种密闭隔离的运行环境。
因为容器镜像打包了应用程序运行时所有组件和依赖文件,打包好之后,容器镜像中的单个组件也就无法再直接进行更改。因此现有技术中,如果我们因性能或者安全漏洞需要升级某一应用的容器中应用的某个应用组件,例如jar包时,往往需要重新部署并制作该应用的镜像,这样的升级过程耗时且过程繁琐。
发明内容
本申请实施例的目的在于提出一种更新容器镜像的方法、装置、计算机设备及存储介质,以解决现有技术中,在进行更新容器镜像时,由于需要重新部署和制作镜像,所导致的更新容器镜像效率低下的技术问题。
为了解决上述技术问题,本申请实施例提供一种更新容器镜像的方法,采用了如下所述的技术方案:
获取对目标应用的容器镜像中目标应用组件的升级指令;
响应于所述升级指令,重启处于运行状态的所述容器镜像的容器,或者,为未启动的所述容器镜像创建对应的容器;
在重启后或者新创建的所述容器的运行环境中,利用所述目标应用组件的升级文件对所述容器镜像进行更新操作。
本申请实施例中,在获取到对容器镜像中目标应用组件的升级指令后,确定该升级指令所指示的升级文件。进而,重启或者新创建该目标应用组件对应的容器,最后在容器中对目标应用组件进行升级操作。相比现有技术,由于升级过程中,无需重新部署和制作应用镜像,从而可以有效提高容器镜像的升级效率。
为了解决上述技术问题,本申请实施例还提供另一种更新容器镜像的方法,采用了如下所述的技术方案:
将升级指令部署在目标应用的容器镜像的启动脚本中;
启动所述容器镜像的容器后,运行所述启动脚本并触发所述升级指令;
响应于所述升级指令,检测所述容器镜像是否存在需要更新的目标应用组件;
若存在所述目标应用组件,则在所述容器的运行环境中,并利用所述目标应用组件的升级文件对所述容器镜像进行更新。
本申请实施例中,通过在容器镜像的启动脚本中设置升级指令,完成容器镜像的自动更新操作,由于无需重新部署和制作应用镜像,从而可以有效提高容器镜像的升级效率。
为了解决上述技术问题,本申请实施例提供一种更新容器镜像的装置,采用了如下所述的技术方案:
获取单元,用于获取对目标应用的容器镜像中目标应用组件的升级指令;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国平安财产保险股份有限公司,未经中国平安财产保险股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011504901.6/2.html,转载请声明来源钻瓜专利网。