The invention discloses a method and device for managing, using and constructing container mirrors, in which the management method includes: acquiring the identification of container mirrors; acquiring the first instruction set corresponding to the historical operation instructions from the predetermined initial container mirror to the container mirror according to the identification of container mirrors; and feedback the predetermined initial container mirror and the container mirror when receiving the acquisition request for container mirrors. The first instruction set. According to the invention, the container image can be obtained by superimposing one or more layers on the basis of the initial container image and writing the instructions into the first instruction set according to the situation, without increasing the number of layers superimposed on the basis of the initial container image with the increase of the number of historical operations. Therefore, the structure of the container image can be simplified and the size of the container image can be reduced. Small.
【技术实现步骤摘要】
容器镜像的管理、使用及构建方法、装置
本专利技术涉及虚拟化
,具体涉及容器镜像的管理、使用及构建方法、装置。
技术介绍
容器技术是一种虚拟化技术,与hypervisor一样,其可以实现应用层基于硬件层的虚拟化,使用户关注与开发应用程序本身。然而,hypervisor环境来说,运行于其上的虚拟机都需要运行一个完整的操作系统以及其中安装好的大量应用程序。与其不同的是,采用容器便不用安装一套操作系统和依赖环境,容器极其轻量,只打包了Bin\Lib文件。容器(Container)可以从一个平台(例如CentOS7.2环境)较容易地应用于另一个平台(Ubuntu17.04环境),开发好的应用程序可以封装在一个容器中,从而借助容器可以较容易地将开发好的应用程序移植到不同的平台使用。容器本身是一个基于内核的技术,用于封装应用程序的容器是容器镜像(Image)的实例化结果,容器技术提供了镜像仓库(Repository)用于存储并管理容器镜像,用户可以从镜像仓库取容器镜像来使用,如图1A所示。常规镜像是在内核的基础上生成一个最原始的镜像,然后再叠加很多层,容器镜像的分层结构如图1B所示,容器镜像中的各层都是只读的,也即这些层中的文件都是不允许修改的。如果相对容器镜像的功能进行修改就只能在原容器镜像的基础上叠加层,这些层是可读且可写(即可以修改的)的。由此可见,若想将容器镜像实例化为具体的容器从而实现特定的功能,就只能在容器镜像的基础上叠加层,通过修改叠加层来将容器镜像的功能实例化(例如将应用程序写在叠加层),如图1C所示。容器技术还提供了一种基于容器的镜像创建方式,即 ...
【技术保护点】
1.一种容器镜像的管理方法,其特征在于,包括:获取容器镜像的标识;根据所述容器镜像的标识获取从预定初始容器镜像至所述容器镜像所执行的历史操作指令对应的第一指令集合;当接收到所述容器镜像的获取请求时,反馈所述预定初始容器镜像和所述第一指令集合。
【技术特征摘要】
1.一种容器镜像的管理方法,其特征在于,包括:获取容器镜像的标识;根据所述容器镜像的标识获取从预定初始容器镜像至所述容器镜像所执行的历史操作指令对应的第一指令集合;当接收到所述容器镜像的获取请求时,反馈所述预定初始容器镜像和所述第一指令集合。2.根据权利要求1所述的容器镜像的管理方法,其特征在于,所述反馈所述预定初始容器镜像和所述第一指令集合的步骤之前,还包括:将所述第一指令集合中对所述预定初始容器镜像具有相反操作意图的指令合并或删除,得到所述历史操作指令对应的第二指令集合;对应地,所述当接收到所述容器镜像的获取请求时,反馈所述预定初始容器镜像和所述第一指令集合的步骤,包括:当接收到所述容器镜像的获取请求时,反馈所述预定初始容器镜像和所述第二指令集合。3.根据权利要求1或2所述的容器镜像的管理方法,其特征在于,所述第一指令集合为涉及容器镜像环境改变的操作指令。4.根据权利要求1所述的容器镜像的管理方法,其特征在于,还包括:获取所述预定初始容器镜像;获取待优化容器镜像所对应的所述第一指令集合;在所述预定初始容器镜像的基础上叠加层并写入所述第一指令集合中的指令,得到优化后的容器镜像。5.根据权利要求2所述的容器镜像的管理方法,其特征在于,还包括:获取所述预定初始容器镜像;获取待优化容器镜像所对应的所述第二指令集合;在所述预定初始容器镜像的基础上叠加层并写入所述第二指令集合中的指令,得到优化后的容器镜像。6.一种容器镜像的使用方法,其特征在于,包括:发送所需容器镜像的获取请求;容器镜像管理平台根据所述获取请求会反馈预定初始容器镜像和从所述预定初始容器镜像至所述所需容器镜像的预定指令集合;在所述预定初始容器镜像的基础上叠加层并写入所述预定指令集合中的指令,得到所需容器镜像;在所需容器镜像的基础上写入相关操作指令得到所需容器。7.一种容器镜像的构建方法,其特征在于,包括:获取第一容器镜像,并获取从预定初始容器镜像至所述第一容器镜像所执行的历史操作指令对应的第三指令集合;在所述第一容器镜像的基础上叠加层并写入相关操作指令得到第二容器;将所述相关操作指令并入所述第三指令集合,形成第四指令集合;将第二容器镜像的标识和所述第四指令集合提交至容器镜像管理平台。8.根据权利要求7所述的容器镜像的构建方法,其特征在于,所述将第二容器镜像的标识和所述第四指令集合提交至容器镜像管理平台的步骤之前,包括:将所述第四指令集合中对所述预定初始容器镜像具有相反操作意图的指令合并或删除,得到所述历史操作指令对应的第五指令集合;对应地,所述将第二容器镜像的标识和所述第四指令集合提交至容器镜像管理平台的步骤包括:将第二容器镜像的标识和所述第五指令集合提交至容器镜像管理平台。9.根据权利要求7或8所述的容器镜像的构建方法,其特征在于,所述将所述相关操作指令并入所述第三指令集合,形成第四指令集合的步骤之前,包括:将所述第三指令集合中、对容器镜像具有相反操作意图的指令进行合并或删除;和/或,将所述相关指令中对容器镜像具有相反操作意图的指令进行合并或删除。10.根据权利要求7所述的容器镜像的构建方法,其特征在于,所述获取第一容器镜像的步骤包括:发送第一容器镜像的获取请求;容器镜像管理平台根据所述获取请求会反馈预定初始容器镜像和从所述预定初始容器镜像至所述第一容器镜像的预定指令集合;在所述预定初始容器镜像的基础上叠加层并写入所述预定指令集合中的指令,得到第一容器镜像。11.一种容器镜像的管理装置,其特征在于,包括:第一获取单元,用于获取容器镜像的标识;第二获取单元,用于根据所述容器镜像的标识获取从预定初始容器镜像至所述容器镜像所执行的历史操作指令对应的第一指令集合;反馈单元,用于当接...
【专利技术属性】
技术研发人员:王岳,陈江琦,林龙,王博,高畅,刘思言,
申请(专利权)人:全球能源互联网研究院有限公司,国网山东省电力公司,国家电网有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。