CN113342362A - 一种容器引擎docker的信息处理方法、装置、设备和存储介质 - Google Patents

一种容器引擎docker的信息处理方法、装置、设备和存储介质 Download PDF

Info

Publication number
CN113342362A
CN113342362A CN202110600411.4A CN202110600411A CN113342362A CN 113342362 A CN113342362 A CN 113342362A CN 202110600411 A CN202110600411 A CN 202110600411A CN 113342362 A CN113342362 A CN 113342362A
Authority
CN
China
Prior art keywords
mirror image
layer number
target
information
storage layer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110600411.4A
Other languages
English (en)
Inventor
陈旭
王奇刚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Lenovo Beijing Ltd
Original Assignee
Lenovo Beijing Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Lenovo Beijing Ltd filed Critical Lenovo Beijing Ltd
Priority to CN202110600411.4A priority Critical patent/CN113342362A/zh
Publication of CN113342362A publication Critical patent/CN113342362A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/63Image based installation; Cloning; Build to order
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种容器引擎docker的信息处理方法、装置、设备和存储介质,包括:在目标镜像所对应的工作空间处于启动状态下,获取所述目标镜像的当前存储层数信息;将所获取的当前存储层数信息记录至数据库;基于所述数据库中的当前存储层数信息,确定所述目标镜像的可保存次数;基于所确定的可保存次数,给出相应的提示。通过在工作空间启动之后获取目标镜像的当前存储层数信息,并将所获取的当前存储层数信息记录至数据库,工作空间便可与数据库进行数据交互,以获取到目标镜像的可保存次数,并基于可保存次数给出相应的提示,用户可根据给出的提示得知目标镜像的层数使用情况,以避免用户最后一次修改无法保存造成不必要的损失。

Description

一种容器引擎docker的信息处理方法、装置、设备和存储介质
技术领域
本发明涉及容器引擎技术领域,尤其涉及一种容器引擎docker的信息处理方法、装置、设备和存储介质。
背景技术
现有基于docker实现的工作空间中,用户的工作空间可以进行保存,修改后的容器将被做成镜像上传到云端存储,下次用户启动时,使用定修改后的镜像进行工作。
由于docker本身对保存层数(镜像存储层数),有固定的限制(目前为127),所以用户在保存层数超过限制后会导致修改后的内容无法保存。并且由于没有提示限制保存的信息,导致用户最后一次修改无法保存造成不必要的损失。
发明内容
本发明一方面提供一种容器引擎docker的信息处理方法,所述方法包括:在目标镜像所对应的工作空间处于启动状态下,获取所述目标镜像的当前存储层数信息;将所获取的当前存储层数信息记录至数据库;基于所述数据库中的当前存储层数信息,确定所述目标镜像的可保存次数;基于所确定的可保存次数,给出相应的提示。
在一可实施方式中,所述获取所述目标镜像的当前存储层数信息,包括以下至少之一:解析所述目标镜像的元数据中根文件系统RootFS的当前存储层数信息;或,解析所述元数据中下级目录lowerdir文件中的当前存储层数信息;或,从所述目标镜像对应的镜像仓库中获取当前存储层数信息。
在一可实施方式中,在获取所述目标镜像的当前存储层数信息之前,所述方法还包括:发送获取所述工作空间的相关资源的请求;基于所述相关资源,确定所述目标镜像的对应容器实例化;获取所述目标镜像的当前存储层数信息。
在一可实施方式中,在基于所述数据库中的当前存储层数信息,确定所述目标镜像的可保存次数之前,所述方法还包括:将所述工作空间的工作状态更新为运行状态。
在一可实施方式中,所述方法还包括:在目标镜像所对应的工作空间处于关闭过程下,发送表征关闭容器的请求信息,其中所述请求信息用于基于所述容器更新目标镜像;获取更新后目标镜像的当前存储层数信息;将所获取的当前存储层数信息记录至所述数据库;将所述目标镜像保存至镜像仓库。
在一可实施方式中,在获取更新后目标镜像的当前存储层数信息之后,所述方法还包括:将所述工作空间的工作状态变更为正在停止状态;相应的,在将所述目标镜像保存至镜像仓库之后,所述方法还包括:将所述工作空间的工作状态变更为已停止状态。
在一可实施方式中,在目标镜像所对应的工作空间处于关闭过程之前,所述方法还包括:基于所述数据库中的当前存储层数信息,确定所述目标镜像的保存次数是否已达到上限;若确定所述目标镜像的保存次数已达到上限,则不进行镜像保存操作;将表征不进行镜像保存操作的提示信息进行展现。
本发明另一方面提供一种容器引擎docker的信息处理装置,所述装置包括:镜像层数获取模块,用于在目标镜像所对应的工作空间处于启动状态下,获取所述目标镜像的当前存储层数信息;镜像层数记录模块,用于将所获取的当前存储层数信息记录至数据库;保存层数判断模块,用于基于所述数据库中的当前存储层数信息,确定所述目标镜像的可保存次数;镜像层数反馈模块,用于基于所确定的可保存次数,给出相应的提示。
本发明另一方面提供一种容器引擎docker的信息处理设备,所述设备包括存储器和处理器;所述存储器用于存储指令,所述指令用于控制所述处理器进行操作以执行时实现上述任一项所述的容器引擎docker的信息处理方法。
本发明另一方面提供一种计算机存储介质,所述存储介质包括一组计算机可执行指令,当所述指令被执行时用于执行上述任一项所述的容器引擎docker的信息处理方法。
在本发明实施例中,通过在工作空间启动之后获取目标镜像的当前存储层数信息,并将所获取的当前存储层数信息记录至数据库,工作空间便可与数据库进行数据交互,以获取到目标镜像的可保存次数,并基于可保存次数给出相应的提示,用户可根据给出的提示得知目标镜像的层数使用情况,以避免用户最后一次修改无法保存造成不必要的损失。
附图说明
通过参考附图阅读下文的详细描述,本发明示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施方式,其中:
在附图中,相同或对应的标号表示相同或对应的部分。
图1为本发明实施例一种容器引擎docker的信息处理方法的实现流程示意图;
图2为本发明实施例一种容器引擎docker启动状态下的执行过程流程图;
图3为本发明实施例一种容器引擎docker启动状态下中获取当前存储层数信息的执行过程流程图;
图4为本发明实施例一种容器引擎docker关闭过程下的执行过程流程图;
图5为本发明实施例一种容器引擎docker的信息处理装置的结构组成示意图。
具体实施方式
为使本发明的目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而非全部实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
结合图1和图2所示,本发明一方面提供一种容器引擎docker的信息处理方法,方法包括:
步骤101,在目标镜像所对应的工作空间处于启动状态下,获取目标镜像的当前存储层数信息;
步骤102,将所获取的当前存储层数信息记录至数据库;
步骤103,基于数据库中的当前存储层数信息,确定目标镜像的可保存次数;
步骤104,基于所确定的可保存次数,给出相应的提示。
本实施例中,在步骤101中,目标镜像为将要被调用的基础镜像,对应的工作空间为基于当前目标镜像进行创建,当启动目标镜像的工作空间后,获取目标镜像的当前存储层数信息,其中,当前存储层数信息的获取途径可以为通过工作空间控制器Workspacecontroller向镜像分析器Image analyzer发送进行基础镜像分析的请求,镜像分析器Image analyzer响应该请求并获取目标镜像的当前存储层数信息。
在步骤102中,镜像分析器Image analyzer获取到当前存储层数信息之后,将该当前存储层数信息保存至数据库中,其中该数据库可以是本地数据库,也可以是云数据库。
在步骤103中,在将当前存储层数信息保存至数据库之后,可通过工作空间界面workspace portal获取数据库中的当前存储层数信息,并基于该目标镜像总的可保存次数(一般为127层),确定目标镜像的可保存次数。
在步骤104中,在所确定的可保存次数之后,便可给用户给出相应的提示,以告知当前的镜像层数使用情况,该提示信息可以是告知目标镜像已经使用的保存层数,剩余可保存次数等,还可以是在当前保存层数达到上限时告知目标镜像已经不可保存,告知方式可以是在工作界面中以弹窗形式告知,也可以是语音的方式告知。
由此,通过在工作空间启动之后获取目标镜像的当前存储层数信息,并将所获取的当前存储层数信息记录至数据库,工作空间便可与数据库进行数据交互,以获取到目标镜像的可保存次数,并基于可保存次数给出相应的提示,用户可根据给出的提示得知目标镜像的层数使用情况,以避免用户最后一次修改无法保存造成不必要的损失。
在一可实施方式中,获取目标镜像的当前存储层数信息,包括以下至少之一:
解析目标镜像的元数据中根文件系统RootFS的当前存储层数信息;
或,解析元数据中lowerdir文件中的当前存储层数信息;
或,从目标镜像对应的镜像仓库中获取当前存储层数信息。
本实施例中,结合图3所示,步骤101中获取目标镜像的当前存储层数信息的途径包括:
1、用户可通过工作空间界面workspace portal给工作空间控制器Workspacecontroller发送获取当前存储层数信息的请求,其中工作空间控制器Workspacecontroller预先位于docker所预先设置的主节点Master node内。
工作空间控制器Workspace controller响应于该请求,发送相关指令给镜像分析器Image analyzer,镜像分析器Image analyzer响应该相关指令,以解析目标镜像的元数据中根文件系统RootFS的当前存储层数信息。
2、若镜像分析器Image analyzer解析失败,则进一步解析元数据中下级目录lowerdir文件中的当前存储层数信息。
3、若以上两种方式镜像分析器Image analyzer均解析失败,说明本地存储信息已经损坏,可以从镜像仓库Image store中获取当前存储层数信息。
若镜像分析器Image analyzer获取到当前存储层数信息之后,便可将当前存储层数信息记录到数据库中,以便用户可通过工作空间界面workspace portal与数据库信息交互。
在一可实施方式中,在获取目标镜像的当前存储层数信息之前,方法还包括:
发送获取工作空间的相关资源的请求;
基于相关资源,确定目标镜像的对应容器实例化;
获取目标镜像的当前存储层数信息。
本实施例中,工作空间在启动过程中,需要通过docker的调度器向主节点Masternode发送资源获取请求,通过主节点Master node获取对应于工作空间的相关资源,其中相关资源例如镜像服务、依赖库等等。
利用相关资源,用户基于目标镜像创建对应的容器实例;
在创建完成对应的容器实例化之后,获取目标镜像的当前存储层数信息。
在一可实施方式中,在基于数据库中的当前存储层数信息,确定目标镜像的可保存次数之前,方法还包括:
将工作空间的工作状态更新为运行状态。
本实施例中,结合图2所示,工作空间的工作状态的更新通过镜像分析器Imageanalyzer在将当前存储层数信息记录到数据库之后对工作空间控制器Workspacecontroller发送通知完成的指令,工作空间控制器Workspace controller接收响应该指令,以对工作空间界面workspace portal的工作状态更新为运行Running状态。
在一可实施方式中,方法还包括:
在目标镜像所对应的工作空间处于关闭过程下,发送表征关闭容器的请求信息,其中请求信息用于基于容器更新目标镜像;
获取更新后目标镜像的当前存储层数信息;
将所获取的当前存储层数信息记录至数据库;
将目标镜像保存至镜像仓库。
本实施例中,结合图4所示,工作空间的关闭操作通过用户控制工作空间界面workspace portal向工作空间控制器Workspace controller发送关闭容器的指令,工作空间控制器Workspace controller响应该指令,并向镜像分析器Image analyzer发送请求保存容器的指令,镜像分析器Image analyzer响应该指令,以分析目前镜像的镜像层数并更新目标镜像的挡墙存储层数信息,并将所获取的当前镜像层数保存至数据库中,之后,镜像分析器Image analyzer将目标镜像保存到镜像仓库Image store中。
在一可实施方式中,在获取更新后目标镜像的当前存储层数信息之后,方法还包括:
将工作空间的工作状态变更为正在停止状态;
相应的,在将目标镜像保存至镜像仓库之后,方法还包括:
将工作空间的工作状态变更为已停止状态。
本实施例中,仍结合图4所示,镜像分析器Image analyzer在获取更新后目标镜像的当前存储层数信息之后,工作空间控制器Workspace controller对工作空间界面workspace portal状态变更指令,工作空间界面workspace portal响应该指令,以将工作状态从运行Running状态变更为正在停止Stopping状态。
镜像分析器Image analyzer在将目标镜像保存至镜像仓库之后,向工作空间控制器Workspace controller发送保存完成的通知信息,工作空间控制器Workspacecontroller在接收到该通知信息之后对当前容器进行关闭,当前容器关闭之后令工作空间界面workspace portal将工作空间的工作状态变更为已停止Stopped状态,并生成相应的提示信息以供用户查看。
在一可实施方式中,在目标镜像所对应的工作空间处于关闭过程之前,方法还包括:
基于数据库中的当前存储层数信息,确定目标镜像的保存次数是否已达到上限;
若确定目标镜像的保存次数已达到上限,则不进行镜像保存操作;
将表征不进行镜像保存操作的提示信息进行展现。
本实施例中,仍结合图4所示,工作空间界面workspace portal在发出关闭容器请求之前,获取数据库中的当前存储层数信息,与目标镜像的总保存次数进行计算,验证目标镜像是否已经达到保存次数上限;若验证结果表征为目标镜像的保存次数已经达到了保存次数上限,则docker将不执行镜像保存操作,并生成相应的提示信息在工作空间界面workspace portal上进行展现,以告知用户。
综上所述,结合图2所示,在目标镜像所对应的工作空间处于启动状态下的执行过程为:
首先由用户创建工作空间界面workspace portal,创建成功之后,工作空间界面workspace portal向工作空间控制器Workspace controller发送初始化指示。
其次,工作空间控制器Workspace controller完成初始化之后,启动目标镜像所对应的容器。在容器启动完成之后,向镜像分析器Image analyzer发送进行基础镜像的请求。
镜像分析器Image analyzer接收该请求,以获取到目标镜像的当前层数信息。之后,反馈给工作空间控制器Workspace controller以表示分析完成,并将层数信息记录到数据库中DB中。工作空间控制器Workspace controller在接收到通知完成的消息之后,将工作空间界面workspace portal的工作状态变更为运行Running状态。
当用户向工作空间界面workspace portal发出查看可保存次数请求之后,工作空间界面workspace portal从数据库中DB获取到层数信息,可供用户查看。
综上所述,结合图4所示,在目标镜像所对应的工作空间处于关闭状态下的执行过程为:
首先用户向工作空间界面workspace portal发送关闭请求之后,工作空间界面workspace portal从数据库DB中获取当前镜像层数,并与目标镜像的所有保存次数进行对比,以验证当前目标镜像还是否可以保存,将验证结果提示给用户。
其次,工作空间界面workspace portal向工作空间控制器Workspace controller发送执行关闭容器的指令,工作空间控制器Workspace controller响应指令以向镜像分析器Image analyzer发送请求保存容器的指令,之后向工作空间界面workspace portal发送将工作空间状态变更为正在停止Stopping的指示。
镜像分析器Image analyzer响应该指令以分析获取目标镜像的镜像层数,并向数据库DB记录镜像层数,之后将目标镜像保存至镜像仓库Image store中,并向工作空间控制器Workspace controller反馈通知完成的消息。
工作空间控制器Workspace controller在接收到该消息之后,执行关闭容器的操作,并向工作空间界面workspace portal发送将工作状态变更为已关闭Stopped的指示。
工作空间界面workspace portal在状态变更完成之后,向用户展示状态变更的提示信息。
本发明另一方面提供一种容器引擎docker的信息处理装置,如图5所示,装置包括:
镜像层数获取模块201,用于在目标镜像所对应的工作空间处于启动状态下,获取目标镜像的当前存储层数信息;
镜像层数记录模块202,用于将所获取的当前存储层数信息记录至数据库;
保存层数判断模块203,用于基于数据库中的当前存储层数信息,确定目标镜像的可保存次数;
镜像层数反馈模块204,用于基于所确定的可保存次数,给出相应的提示。
本实施例中,在镜像层数获取模块201中,目标镜像为将要被调用的基础镜像,对应的工作空间为基于当前目标镜像进行创建,当启动目标镜像的工作空间后,获取目标镜像的当前存储层数信息,其中,当前存储层数信息的获取途径可以为通过工作空间控制器Workspace controller向镜像分析器Image analyzer发送进行基础镜像分析的请求,镜像分析器Image analyzer响应该请求并获取目标镜像的当前存储层数信息。
在镜像层数记录模块202中,镜像分析器Image analyzer获取到当前存储层数信息之后,将该当前存储层数信息保存至数据库中,其中该数据库可以是本地数据库,也可以是云数据库。
在保存层数判断模块203中,在将当前存储层数信息保存至数据库之后,可通过工作空间界面workspace portal获取数据库中的当前存储层数信息,并基于该目标镜像总的可保存次数(一般为127层),确定目标镜像的可保存次数。
在镜像层数反馈模块204中,在所确定的可保存次数之后,便可给用户给出相应的提示,以告知当前的镜像层数使用情况,该提示信息可以是告知目标镜像已经使用的保存层数,剩余可保存次数等,还可以是在当前保存层数达到上限时告知目标镜像已经不可保存,告知方式可以是在工作界面中以弹窗形式告知,也可以是语音的方式告知。
由此,通过在工作空间启动之后获取目标镜像的当前存储层数信息,并将所获取的当前存储层数信息记录至数据库,工作空间便可与数据库进行数据交互,以获取到目标镜像的可保存次数,并基于可保存次数给出相应的提示,用户可根据给出的提示得知目标镜像的层数使用情况,以避免用户最后一次修改无法保存造成不必要的损失。
在一可实施方式中,镜像层数获取模块201在获取目标镜像的当前存储层数信息的途径,包括以下至少之一:
解析目标镜像的元数据中根文件系统RootFS的当前存储层数信息;
或,解析元数据中lowerdir文件中的当前存储层数信息;
或,从目标镜像对应的镜像仓库中获取当前存储层数信息。
本实施例中,结合图3所示,镜像层数获取模块201在获取目标镜像的当前存储层数信息的途径包括:
1、用户可通过工作空间界面workspace portal给工作空间控制器Workspacecontroller发送获取当前存储层数信息的请求,其中工作空间控制器Workspacecontroller预先位于docker所预先设置的主节点Master node内。
工作空间控制器Workspace controller响应于该请求,发送相关指令给镜像分析器Image analyzer,镜像分析器Image analyzer响应该相关指令,以解析目标镜像的元数据中根文件系统RootFS的当前存储层数信息。
2、若镜像分析器Image analyzer解析失败,则进一步解析元数据中下级目录lowerdir文件中的当前存储层数信息。
3、若以上两种方式镜像分析器Image analyzer均解析失败,说明本地存储信息已经损坏,可以从镜像仓库Image store中获取当前存储层数信息。
若镜像分析器Image analyzer获取到当前存储层数信息之后,便可将当前存储层数信息记录到数据库中,以便用户可通过工作空间界面workspace portal与数据库信息交互。
在一可实施方式中,在获取目标镜像的当前存储层数信息之前,镜像层数获取模块201还具体用于:
发送获取工作空间的相关资源的请求;
基于相关资源,确定目标镜像的对应容器实例化;
获取目标镜像的当前存储层数信息。
本实施例中,工作空间在启动过程中,需要通过docker的调度器向主节点Masternode发送资源获取请求,通过主节点Master node获取对应于工作空间的相关资源,其中相关资源例如镜像服务、依赖库等等。
利用相关资源,用户基于目标镜像创建对应的容器实例;
在创建完成对应的容器实例化之后,获取目标镜像的当前存储层数信息。
在一可实施方式中,保存层数判断模块203在基于数据库中的当前存储层数信息,确定目标镜像的可保存次数之前,方法还包括:
将工作空间的工作状态更新为运行状态。
本实施例中,结合图2所示,工作空间的工作状态的更新通过镜像分析器Imageanalyzer在将当前存储层数信息记录到数据库之后对工作空间控制器Workspacecontroller发送通知完成的指令,工作空间控制器Workspace controller接收响应该指令,以对工作空间界面workspace portal的工作状态更新为运行Running状态。
在一可实施方式中,镜像层数反馈模块204还具体用于:
在目标镜像所对应的工作空间处于关闭过程下,发送表征关闭容器的请求信息,其中请求信息用于基于容器更新目标镜像;
获取更新后目标镜像的当前存储层数信息;
将所获取的当前存储层数信息记录至数据库;
将目标镜像保存至镜像仓库。
本实施例中,结合图4所示,工作空间的关闭操作通过用户控制工作空间界面workspace portal向工作空间控制器Workspace controller发送关闭容器的指令,工作空间控制器Workspace controller响应该指令,并向镜像分析器Image analyzer发送请求保存容器的指令,镜像分析器Image analyzer响应该指令,以分析目前镜像的镜像层数并更新目标镜像的挡墙存储层数信息,并将所获取的当前镜像层数保存至数据库中,之后,镜像分析器Image analyzer将目标镜像保存到镜像仓库Image store中。
在一可实施方式中,镜像层数反馈模块204在获取更新后目标镜像的当前存储层数信息之后,还具体用于:
将工作空间的工作状态变更为正在停止状态;
相应的,在将目标镜像保存至镜像仓库之后,方法还包括:
将工作空间的工作状态变更为已停止状态。
本实施例中,仍结合图4所示,镜像分析器Image analyzer在获取更新后目标镜像的当前存储层数信息之后,工作空间控制器Workspace controller对工作空间界面workspace portal状态变更指令,工作空间界面workspace portal响应该指令,以将工作状态从运行Running状态变更为正在停止Stopping状态。
镜像分析器Image analyzer在将目标镜像保存至镜像仓库之后,向工作空间控制器Workspace controller发送保存完成的通知信息,工作空间控制器Workspacecontroller在接收到该通知信息之后对当前容器进行关闭,当前容器关闭之后令工作空间界面workspace portal将工作空间的工作状态变更为已停止Stopped状态,并生成相应的提示信息以供用户查看。
在一可实施方式中,镜像层数反馈模块204在目标镜像所对应的工作空间处于关闭过程之前,还具体用于:
基于数据库中的当前存储层数信息,确定目标镜像的保存次数是否已达到上限;
若确定目标镜像的保存次数已达到上限,则不进行镜像保存操作;
将表征不进行镜像保存操作的提示信息进行展现。
本实施例中,仍结合图4所示,工作空间界面workspace portal在发出关闭容器请求之前,获取数据库中的当前存储层数信息,与目标镜像的总保存次数进行计算,验证目标镜像是否已经达到保存次数上限;若验证结果表征为目标镜像的保存次数已经达到了保存次数上限,则docker将不执行镜像保存操作,并生成相应的提示信息在工作空间界面workspace portal上进行展现,以告知用户。
综上所述,结合图2所示,在目标镜像所对应的工作空间处于启动状态下的执行过程为:
首先由用户创建工作空间界面workspace portal,创建成功之后,工作空间界面workspace portal向工作空间控制器Workspace controller发送初始化指示。
其次,工作空间控制器Workspace controller完成初始化之后,启动目标镜像所对应的容器。在容器启动完成之后,向镜像分析器Image analyzer发送进行基础镜像的请求。
镜像分析器Image analyzer接收该请求,以获取到目标镜像的当前层数信息。之后,反馈给工作空间控制器Workspace controller以表示分析完成,并将层数信息记录到数据库中DB中。工作空间控制器Workspace controller在接收到通知完成的消息之后,将工作空间界面workspace portal的工作状态变更为运行Running状态。
当用户向工作空间界面workspace portal发出查看可保存次数请求之后,工作空间界面workspace portal从数据库中DB获取到层数信息,可供用户查看。
综上所述,结合图4所示,在目标镜像所对应的工作空间处于关闭状态下的执行过程为:
首先用户向工作空间界面workspace portal发送关闭请求之后,工作空间界面workspace portal从数据库DB中获取当前镜像层数,并与目标镜像的所有保存次数进行对比,以验证当前目标镜像还是否可以保存,将验证结果提示给用户。
其次,工作空间界面workspace portal向工作空间控制器Workspace controller发送执行关闭容器的指令,工作空间控制器Workspace controller响应指令以向镜像分析器Image analyzer发送请求保存容器的指令,之后向工作空间界面workspace portal发送将工作空间状态变更为正在停止Stopping的指示。
镜像分析器Image analyzer响应该指令以分析获取目标镜像的镜像层数,并向数据库DB记录镜像层数,之后将目标镜像保存至镜像仓库Image store中,并向工作空间控制器Workspace controller反馈通知完成的消息。
工作空间控制器Workspace controller在接收到该消息之后,执行关闭容器的操作,并向工作空间界面workspace portal发送将工作状态变更为已关闭Stopped的指示。
工作空间界面workspace portal在状态变更完成之后,向用户展示状态变更的提示信息。
本发明另一方面提供一种基于docker的信息处理设备,设备包括存储器和处理器;
存储器用于存储指令,指令用于控制处理器进行操作以执行时实现任一项的基于docker的信息处理方法。
本实施例中,存储器用于存储指令,当存储指令被执行时用于:在目标镜像所对应的工作空间处于启动状态下,获取目标镜像的当前存储层数信息;将所获取的当前存储层数信息记录至数据库;基于数据库中的当前存储层数信息,确定目标镜像的可保存次数;基于所确定的可保存次数,给出相应的提示。
由此,通过在工作空间启动之后获取目标镜像的当前存储层数信息,并将所获取的当前存储层数信息记录至数据库,工作空间便可与数据库进行数据交互,以获取到目标镜像的可保存次数,并基于可保存次数给出相应的提示,用户可根据给出的提示得知目标镜像的层数使用情况,以避免用户最后一次修改无法保存造成不必要的损失。
本发明另一方面提供一种存储介质,存储介质包括一组计算机可执行指令,当指令被执行时用于执行基于docker的信息处理方法。
本实施例中,计算机存储介质包括一组计算机可执行指令,当指令被执行时用于:在目标镜像所对应的工作空间处于启动状态下,获取目标镜像的当前存储层数信息;将所获取的当前存储层数信息记录至数据库;基于数据库中的当前存储层数信息,确定目标镜像的可保存次数;基于所确定的可保存次数,给出相应的提示。
由此,通过在工作空间启动之后获取目标镜像的当前存储层数信息,并将所获取的当前存储层数信息记录至数据库,工作空间便可与数据库进行数据交互,以获取到目标镜像的可保存次数,并基于可保存次数给出相应的提示,用户可根据给出的提示得知目标镜像的层数使用情况,以避免用户最后一次修改无法保存造成不必要的损失。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
以上,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (10)

1.一种容器引擎docker的信息处理方法,所述方法包括:
在目标镜像所对应的工作空间处于启动状态下,获取所述目标镜像的当前存储层数信息;
将所获取的当前存储层数信息记录至数据库;
基于所述数据库中的当前存储层数信息,确定所述目标镜像的可保存次数;
基于所确定的可保存次数,给出相应的提示。
2.根据权利要求1所述的方法,所述获取所述目标镜像的当前存储层数信息,包括以下至少之一:
解析所述目标镜像的元数据中根文件系统RootFS的当前存储层数信息;
或,解析所述元数据中下级目录lowerdir文件中的当前存储层数信息;
或,从所述目标镜像对应的镜像仓库中获取当前存储层数信息。
3.根据权利要求1所述的方法,在获取所述目标镜像的当前存储层数信息之前,所述方法还包括:
发送获取所述工作空间的相关资源的请求;
基于所述相关资源,确定所述目标镜像的对应容器实例化;
获取所述目标镜像的当前存储层数信息。
4.根据权利要求1所述的方法,在基于所述数据库中的当前存储层数信息,确定所述目标镜像的可保存次数之前,所述方法还包括:
将所述工作空间的工作状态更新为运行状态。
5.根据权利要求1所述的方法,所述方法还包括:
在目标镜像所对应的工作空间处于关闭过程下,发送表征关闭容器的请求信息,其中所述请求信息用于基于所述容器更新目标镜像;
获取更新后目标镜像的当前存储层数信息;
将所获取的当前存储层数信息记录至所述数据库;
将所述目标镜像保存至镜像仓库。
6.根据权利要求5所述的方法,在获取更新后目标镜像的当前存储层数信息之后,所述方法还包括:
将所述工作空间的工作状态变更为正在停止状态;
相应的,在将所述目标镜像保存至镜像仓库之后,所述方法还包括:
将所述工作空间的工作状态变更为已停止状态。
7.根据权利要求5所述的方法,在目标镜像所对应的工作空间处于关闭过程之前,所述方法还包括:
基于所述数据库中的当前存储层数信息,确定所述目标镜像的保存次数是否已达到上限;
若确定所述目标镜像的保存次数已达到上限,则不进行镜像保存操作;
将表征不进行镜像保存操作的提示信息进行展现。
8.一种容器引擎docker的信息处理装置,所述装置包括:
镜像层数获取模块,用于在目标镜像所对应的工作空间处于启动状态下,获取所述目标镜像的当前存储层数信息;
镜像层数记录模块,用于将所获取的当前存储层数信息记录至数据库;
保存层数判断模块,用于基于所述数据库中的当前存储层数信息,确定所述目标镜像的可保存次数;
镜像层数反馈模块,用于基于所确定的可保存次数,给出相应的提示。
9.一种容器引擎docker的信息处理设备,所述设备包括存储器和处理器;
所述存储器用于存储指令,所述指令用于控制所述处理器进行操作以执行时实现权利要求1-7任一项所述的容器引擎docker的信息处理方法。
10.一种存储介质,所述存储介质包括一组计算机可执行指令,当所述指令被执行时用于执行权利要求1-7任一项所述的容器引擎docker的信息处理方法。
CN202110600411.4A 2021-05-31 2021-05-31 一种容器引擎docker的信息处理方法、装置、设备和存储介质 Pending CN113342362A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110600411.4A CN113342362A (zh) 2021-05-31 2021-05-31 一种容器引擎docker的信息处理方法、装置、设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110600411.4A CN113342362A (zh) 2021-05-31 2021-05-31 一种容器引擎docker的信息处理方法、装置、设备和存储介质

Publications (1)

Publication Number Publication Date
CN113342362A true CN113342362A (zh) 2021-09-03

Family

ID=77472733

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110600411.4A Pending CN113342362A (zh) 2021-05-31 2021-05-31 一种容器引擎docker的信息处理方法、装置、设备和存储介质

Country Status (1)

Country Link
CN (1) CN113342362A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115964119A (zh) * 2021-10-08 2023-04-14 慧与发展有限责任合伙企业 存储系统中的容器管理

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103068068A (zh) * 2011-10-21 2013-04-24 华为技术有限公司 处理上下文的方法及设备
CN106790719A (zh) * 2017-03-21 2017-05-31 杭州迪普科技股份有限公司 一种存储镜像配置信息的方法及装置
CN109933409A (zh) * 2019-03-20 2019-06-25 深圳市网心科技有限公司 Docker数据保存方法和系统、电子装置及计算机可读存储介质
CN111124591A (zh) * 2018-10-31 2020-05-08 中移(苏州)软件技术有限公司 一种镜像传输方法、装置、电子设备及存储介质
US20200334066A1 (en) * 2019-04-18 2020-10-22 Huazhong University Of Science And Technology Nvm-based method for performance acceleration of containers
WO2021042790A1 (zh) * 2019-09-05 2021-03-11 南京邮电大学 分布式容器集群镜像管理主节点、从节点、系统及方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103068068A (zh) * 2011-10-21 2013-04-24 华为技术有限公司 处理上下文的方法及设备
CN106790719A (zh) * 2017-03-21 2017-05-31 杭州迪普科技股份有限公司 一种存储镜像配置信息的方法及装置
CN111124591A (zh) * 2018-10-31 2020-05-08 中移(苏州)软件技术有限公司 一种镜像传输方法、装置、电子设备及存储介质
CN109933409A (zh) * 2019-03-20 2019-06-25 深圳市网心科技有限公司 Docker数据保存方法和系统、电子装置及计算机可读存储介质
US20200334066A1 (en) * 2019-04-18 2020-10-22 Huazhong University Of Science And Technology Nvm-based method for performance acceleration of containers
WO2021042790A1 (zh) * 2019-09-05 2021-03-11 南京邮电大学 分布式容器集群镜像管理主节点、从节点、系统及方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
坐井: "容器化技术-docker", pages 82 - 86, Retrieved from the Internet <URL:https://www.cnblogs.com/zuojing/p/13757356.html> *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115964119A (zh) * 2021-10-08 2023-04-14 慧与发展有限责任合伙企业 存储系统中的容器管理
CN115964119B (zh) * 2021-10-08 2024-04-02 慧与发展有限责任合伙企业 存储系统中的容器管理

Similar Documents

Publication Publication Date Title
CN108876121B (zh) 工单处理方法、装置、计算机设备和存储介质
CN112732587B (zh) 一种自动化测试日志的获取方法、装置、电子设备及存储介质
CN113342685A (zh) 精准测试方法、装置、计算机设备和存储介质
CN112905441A (zh) 测试用例生成方法、测试方法、装置及设备
CN113342362A (zh) 一种容器引擎docker的信息处理方法、装置、设备和存储介质
CN113099439A (zh) Ota升级压力测试的方法、装置、计算机设备和存储介质
US11106571B2 (en) Identification of input object in a graphical user interface
CN113518146B (zh) 一种移动终端信息的获取方法及装置
CN113434938B (zh) Bim模型的检查方法、装置、计算机设备及存储介质
CN111666200A (zh) 一种pc软件冷启动耗时的测试方法及终端
CN114968694A (zh) 一种硬盘故障注入方法、装置、设备及存储介质
CN114328180A (zh) 接口自动化测试方法、系统、电子设备及存储介质
CN110806981B (zh) 一种应用程序测试方法、装置、设备和存储介质
CN113590498A (zh) 一种桌面操作系统应用启动时间的测试方法及系统
CN106484625A (zh) 一种基于通用测试软件开发平台测试子系统的方法
CN113687920A (zh) 一种分布式系统的对象策略操作方法、装置及设备
CN107885640B (zh) 一种硬盘管理方法及装置
CN109561121B (zh) 监控部署的方法及装置
CN110968421A (zh) 一种集群管理方法、装置和系统
CN117331847B (zh) 支持图形界面的自动化测试方法和系统
CN117632620B (zh) 一种用于软件无线电设备测试的管理方法及装置
CN118012748A (zh) 应用接口的测试方法、装置、电子设备和存储介质
CN106874770B (zh) 一种验钞机的固件引导方法和装置
CN113926202A (zh) 资源清理方法及资源加载方法
CN113903368A (zh) 一种盘片自动化测试方法、装置、设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination