容器保存方法、装置、计算机设备和存储介质制造方法及图纸

技术编号:25122990 阅读:27 留言:0更新日期:2020-08-05 02:51
本发明专利技术涉及一种容器保存方法、装置、计算机设备和存储介质。该方法包括:获取目标容器的目标修改内容,并对目标修改内容进行划分,得到多个分区修改内容列表,再依次根据多个分区修改内容列表,对当前目标容器进行修改和保存,得到对应的目标镜像。在上述方法中,由于划分后得到的每个分区修改内容列表的大小小于预设阈值,因此,之后根据每个分区修改内容列表得到的目标镜像中的单层镜像的大小也小于预设阈值,而在实际应用中,由于预设阈值是云端镜像仓库对单层镜像存储大小的限定值,故,该目标镜像可以直接被上传到任意的云端镜像仓库中,不会因容器的修改内容过多导致目标镜像中单层镜像的大小超过云端镜像仓库的限定。

【技术实现步骤摘要】
容器保存方法、装置、计算机设备和存储介质
本申请涉及计算机
,尤其涉及一种容器保存方法、装置、计算机设备和存储介质。
技术介绍
容器技术成为了继大数据和云计算之后又一炙手可热的技术,而且未来相当一段时间内都会非常流行。因此,容器技术成为了线下软件开发人员急需掌握的技术之一。在容器技术的应用中,容器用户会依据不同的任务环境要求,来配置容器内部的环境。为了能保留环境配置以防突发的集群、节点、容器的问题而导致的容器内容丢失,容器用户时常需要容器保存,特别是在对原容器进行修改后,需要将修改后的容器对应的镜像正常的上传到云端镜像仓库中,以便及时更新容器的功能,从而扩大容器的应用范围。目前能够完好保存修改后的容器的方式是通过官方提供的容器操作指令保存,保存过程中可将容器建立后所有可读写层的修改内容作为一层新的镜像层,从而将容器保存至新的镜像,实现容器的保存。但是,上述容器的保存方式,对于一些修改较多的容器保存后,难以将其对应的镜像直接上传至云端镜像仓库,极大的限制了容器对应镜像的应用范围。
技术实现思路
基于此,有必要针对上述技术问题,提供一种能够有效将保存后的容器对应的镜像直接上传至云端镜像仓库,特别是将修改较多的容器保存后,能够将其对应的镜像有效的上传至云端镜像仓库的容器保存方法、装置、计算机设备和存储介质。第一方面,一种容器保存方法,所述方法包括:获取目标容器的目标修改内容;目标修改内容包括目标容器中可读写层的修改内容;对目标修改内容进行划分,得到多个分区修改内容列表,以使每个分区修改内容列表中包含的修改内容所占存储空间的大小小于预设阈值;预设阈值是根据云端镜像仓库的单层镜像存储空间的大小确定的;依次根据多个分区修改内容列表,对当前目标容器进行修改和保存,得到对应的目标镜像;当前目标容器是由目标容器对应的原镜像创建的。在其中一个实施例中,对目标修改内容进行划分,得到多个分区修改内容列表,包括:读取目标修改内容中当前行的修改内容;根据当前行的修改内容的类型和当前行的修改内容的操作类型,将当前行的修改内容划分到对应的分区修改内容列表中。在其中一个实施例中,根据当前行的修改内容的类型和当前行的修改内容的操作类型,将当前行的修改内容划分到对应的分区修改内容列表中,包括:若当前行的修改内容的类型为文件夹,且当前行的修改内容的操作类型为添加或删除,则将当前行的修改内容添加到第一分区修改内容列表中。在其中一个实施例中,根据当前行的修改内容的类型和当前行的修改内容的操作类型,将当前行的修改内容划分到对应的分区修改内容列表中,包括:若当前行的修改内容的类型为文件,且当前行的修改内容的操作类型为删除,则将当前行的修改内容添加至第一分区修改内容列表中;若当前行的修改内容的类型为文件,且当前行的修改内容的操作类型为添加或修改,则判断当前行的修改内容的大小与第一分区修改内容列表的大小之和是否大于预设阈值,并根据判断结果将当前行的修改内容划分到对应的分区修改内容列表中。在其中一个实施例中,根据判断结果将当前行的修改内容划分到对应的分区修改内容列表中,包括:若判断结果为当前行的修改内容的大小与第一分区修改内容列表的大小之和大于预设阈值,则将第一分区修改内容列表中的所有内容添加到第二分区修改内容列表中,并将当前行的修改内容添加到清空的第一分区修改内容列表中,以及将添加内容后的第一分区修改内容列表的大小设置为当前行的修改内容的大小;若判断结果为当前行的修改内容的大小与第一分区修改内容列表的大小之和小于或等于预设阈值,则将当前行的修改内容添加到第一分区修改内容列表中。在其中一个实施例中,依次根据多个分区修改内容列表,对当前目标容器进行修改和保存,得到对应的目标镜像,包括:依次遍历多个分区修改内容列表;根据当前遍历的分区修改内容列表,对当前目标容器进行修改和保存,得到当前镜像;判断是否遍历完成所有的分区修改内容列表;若是,则将当前镜像确定为目标镜像;若否,则根据当前镜像创建新的容器,并将新的容器作为当前目标容器,以及将下一个遍历的分区修改内容列表作为当前遍历的分区修改内容列表,返回执行根据当前遍历的分区修改内容列表,对当前目标容器进行修改和保存,得到当前镜像的步骤。在其中一个实施例中,根据当前遍历的分区修改内容列表,对当前目标容器进行修改和保存,得到当前镜像,包括:读取当前遍历的分区修改内容列表中每一行的修改内容;若每一行的修改内容的操作类型为删除,则将当前目标容器中对应目录下的内容进行删除;若每一行的修改内容的操作类型为添加,且每一行的修改内容的类型为文件夹,则在当前目标容器中创建对应目录下的新文件夹;若每一行的修改内容的操作类型为添加或修改,且每一行的修改内容的类型为文件,则将目标容器对应目录下的内容拷贝到当前目标容器中的对应目录下;保存修改后的当前目标容器,得到当前镜像。在其中一个实施例中,获取目标容器的目标修改内容,包括:根据目标容器的标识,调用容器操作指令提取目标容器中所有的修改内容;从所有的修改内容中筛选出可读写层的修改内容作为目标修改内容。第二方面,一种容器保存装置,所述装置包括:获取模块,用于获取目标容器的目标修改内容;所述目标修改内容包括所述目标容器中可读写层的修改内容;划分模块,用于对所述目标修改内容进行划分,得到多个分区修改内容列表,以使每个分区修改内容列表中包含的修改内容所占存储空间的大小小于预设阈值;所述预设阈值是根据云端镜像仓库的单层镜像存储空间的大小确定的;保存模块,用于依次根据多个所述分区修改内容列表,对当前目标容器进行修改和保存,得到对应的目标镜像;所述当前目标容器是由所述目标容器对应的原镜像创建的。第三方面,一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现第一方面任一实施例所述的容器保存方法。第四方面,一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现第一方面任一实施例所述的容器保存方法。本申请提供的一种图像识别方法、装置、计算机设备和存储介质,包括:获取目标容器的目标修改内容,并对目标修改内容进行划分,得到多个分区修改内容列表,再依次根据多个分区修改内容列表,对当前目标容器进行修改和保存,得到对应的目标镜像。在上述方法中,由于划分后得到的每个分区修改内容列表中包含的修改内容所占存储空间的大小小于预设阈值,因此,之后根据每个分区修改内容列表中的修改内容得到的目标镜像中的单层镜像的大小也小于预设阈值,而在实际应用中,由于预设阈值是云端镜像仓库对单层镜像存储大小的限定值,故,该目标镜像可以直接被上传到任意的云端镜像仓库中,不会因容器的修改内容过多导致目标镜像中单层镜像的大小超过云端镜像仓库的限定,以至于无法被正常上传到云端镜像仓库。因此,本申请提供的容本文档来自技高网...

【技术保护点】
1.一种容器保存方法,其特征在于,所述方法包括:/n获取目标容器的目标修改内容;所述目标修改内容包括所述目标容器中可读写层的修改内容;/n对所述目标修改内容进行划分,得到多个分区修改内容列表,以使每个所述分区修改内容列表中包含的修改内容所占存储空间的大小小于预设阈值;所述预设阈值是根据云端镜像仓库的单层镜像存储空间的大小确定的;/n依次根据多个所述分区修改内容列表,对当前目标容器进行修改和保存,得到对应的目标镜像;所述当前目标容器是由所述目标容器对应的原镜像创建的。/n

【技术特征摘要】
1.一种容器保存方法,其特征在于,所述方法包括:
获取目标容器的目标修改内容;所述目标修改内容包括所述目标容器中可读写层的修改内容;
对所述目标修改内容进行划分,得到多个分区修改内容列表,以使每个所述分区修改内容列表中包含的修改内容所占存储空间的大小小于预设阈值;所述预设阈值是根据云端镜像仓库的单层镜像存储空间的大小确定的;
依次根据多个所述分区修改内容列表,对当前目标容器进行修改和保存,得到对应的目标镜像;所述当前目标容器是由所述目标容器对应的原镜像创建的。


2.根据权利要求1所述的方法,其特征在于,所述对所述目标修改内容进行划分,得到多个分区修改内容列表,包括:
读取所述目标修改内容中当前行的修改内容;
根据所述当前行的修改内容的类型和所述当前行的修改内容的操作类型,将所述当前行的修改内容划分到对应的分区修改内容列表中。


3.根据权利要求2所述的方法,其特征在于,所述根据所述当前行的修改内容的类型和所述当前行的修改内容的操作类型,将所述当前行的修改内容划分到对应的分区修改内容列表中,包括:
若所述当前行的修改内容的类型为文件夹,且所述当前行的修改内容的操作类型为添加或删除,则将所述当前行的修改内容添加到第一分区修改内容列表中。


4.根据权利要求3所述的方法,其特征在于,所述根据所述当前行的修改内容的类型和所述当前行的修改内容的操作类型,将所述当前行的修改内容划分到对应的分区修改内容列表中,包括:
若所述当前行的修改内容的类型为文件,且所述当前行的修改内容的操作类型为删除,则将所述当前行的修改内容添加至所述第一分区修改内容列表中;
若所述当前行的修改内容的类型为文件,且所述当前行的修改内容的操作类型为添加或修改,则判断所述当前行的修改内容的大小与所述第一分区修改内容列表的大小之和是否大于所述预设阈值,并根据判断结果将所述当前行的修改内容划分到对应的分区修改内容列表中。


5.根据权利要求4所述的方法,其特征在于,所述根据判断结果将所述当前行的修改内容划分到对应的分区修改内容列表中,包括:
若所述判断结果为所述当前行的修改内容的大小与所述第一分区修改内容列表的大小之和大于所述预设阈值,则将所述第一分区修改内容列表中的所有内容添加到第二分区修改内容列表中,并将所述当前行的修改内容添加到清空的第一分区修改内容列表中,以及将添加内容后的第一分区修改内容列表的大小设置为所述当前行的修改内容的大小;
若所述判断结果为所述当前行的修改内容的大小与所述第一分区修改内容列表的大小之和小于或等于所述预设阈值,则将所述当前行的修改内容添加到所述第一分区修改内容列表中。


6.根据权利要求1所述的方法,其特征在...

【专利技术属性】
技术研发人员:杨逸飞陈飞
申请(专利权)人:广州文远知行科技有限公司
类型:发明
国别省市:广东;44

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

1