CN113886004A - 安全容器运行、镜像数据下载方法、设备及存储介质 - Google Patents
安全容器运行、镜像数据下载方法、设备及存储介质 Download PDFInfo
- Publication number
- CN113886004A CN113886004A CN202110977275.0A CN202110977275A CN113886004A CN 113886004 A CN113886004 A CN 113886004A CN 202110977275 A CN202110977275 A CN 202110977275A CN 113886004 A CN113886004 A CN 113886004A
- Authority
- CN
- China
- Prior art keywords
- container
- mirror image
- sandbox
- image data
- data
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 69
- 244000035744 Hura crepitans Species 0.000 claims abstract description 275
- 238000004590 computer program Methods 0.000 claims description 15
- 238000002955 isolation Methods 0.000 abstract description 17
- 238000005516 engineering process Methods 0.000 description 18
- 238000010586 diagram Methods 0.000 description 14
- 238000004891 communication Methods 0.000 description 9
- 241001026509 Kata Species 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 238000013507 mapping Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45562—Creating, deleting, cloning virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45575—Starting, stopping, suspending or resuming virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45587—Isolation or security of virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
本申请实施例提供一种安全容器运行、镜像数据下载方法、设备及存储介质。在本实施例中,安全容器所需的容器镜像数据由安全容器所在的沙箱独立进行管理。当存在创建容器实例的需求时,容器运行时组件可从沙箱中获取容器镜像数据,并基于容器镜像数据生成容器实例的启动数据。将该启动数据发送至沙箱后,沙箱可基于该启动数据进行容器的创建。在这种实施方式中,物理机上部署的沙箱一方面可为不同的容器实例创造运行所需的安全隔离环境,另一方面,创建容器实例所需的容器镜像数据从对应的沙箱中获取,实现了不同容器实例在数据方面相互隔离。从而,可避免物理机上的多个沙箱运行不同容器实例时,不同容器实例共享镜像数据导致的数据安全风险。
Description
技术领域
本申请涉及虚拟化技术领域,尤其涉及一种安全容器运行、镜像数据下载方法、设备及存储介质。
背景技术
现如今,容器技术作为一种轻量级的虚拟化技术已被广泛使用。容器部署在物理机的内核上,当多个容器部署在物理机的同一个内核上时,多个容器之间存在相互影响。同时,当容器中运行不可信代码时,物理机容易受到攻击。为提升容器安全性,可在一个受限的安全环境中运行安全容器实例,从而保障物理机的安全性。
目前,存在一种安全容器方案,即:Kata Containers(一种将容器运行在隔离环境中从而实现安全容器的技术)。Kata Containers使用KVM(Kernel-based VirtualMachine,基于内核的虚拟机)技术,为物理机上的每个容器实例运行一个独立的内核,以确保容器实例的安全可靠性。但是这种方案仍旧无法保证容器数据的安全性。因此,有待提出一种解决方案。
发明内容
本申请的多个方面提供一种安全容器运行、镜像数据下载方法、设备及存储介质,用以实现不同容器实例之间的数据隔离,进一步提升容器数据的安全性。
本申请实施例提供一种安全容器运行方法,包括:物理机上的容器运行时组件响应创建容器的请求,向所述物理机上与所述容器对应的沙箱发送镜像数据获取请求;接收所述沙箱根据所述镜像数据获取请求返回的容器镜像数据;根据所述容器镜像数据以及容器运行参数,生成容器实例的启动数据;将所述启动数据发送至所述沙箱,以使所述沙箱根据所述启动数据运行所述容器对应的容器实例。
本申请实施例还提供一种安全容器运行方法,包括:物理机中的沙箱接收所述物理机中的容器运行时组件发送的镜像数据获取请求;将管理的容器镜像数据发送至所述容器进行时组件;接收所述容器进行时组件根据所述容器镜像数据返回的容器实例的启动数据;根据所述启动数据,启动运行所述容器实例。
本申请实施例还提供一种安全容器运行方法,包括:响应创建容器的请求,通过容器运行时组件向与所述容器对应的沙箱发送镜像数据获取请求;通过所述沙箱将所述容器对应的容器镜像数据返回至所述容器运行时组件;通过所述容器运行时组件,根据所述容器镜像数据以及容器运行参数,生成容器实例的启动数据;通过所述容器运行时组件,将所述启动数据发送至所述沙箱;通过所述沙箱,根据所述启动数据运行所述容器对应的容器实例。
本申请实施例还提供一种镜像数据下载方法,其中,包括:通过容器运行时组件接收镜像数据下载指令,所述镜像数据下载指令携带沙箱标识以及镜像标识;通过所述容器运行时组件将所述镜像数据下载指令路由至所述沙箱标识对应的沙箱;通过所述沙箱,根据所述镜像数据下载指令,向容器仓库请求下载并保存所述镜像标识对应的容器镜像数据。
本申请实施例提供的安全容器运行方法中,安全容器所需的容器镜像数据由安全容器所在的沙箱独立进行管理。当存在创建容器实例的需求时,容器运行时组件可从沙箱中获取容器镜像数据,并基于容器镜像数据生成容器实例的启动数据。将该启动数据发送至沙箱后,沙箱可基于该启动数据进行容器的创建。在这种实施方式中,物理机上部署的沙箱一方面可为不同的容器实例创造运行所需的安全隔离环境,另一方面,创建容器实例所需的容器镜像数据从对应的沙箱中获取,实现了不同容器实例在数据方面相互隔离。从而,可避免物理机上的多个沙箱运行不同容器实例时,不同容器实例共享镜像数据导致的数据安全风险。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为安全容器方案中多个容器实例共享容器镜像数据的示意图;
图2为本申请一示例性实施例提供的安全容器运行方法的流程示意图;
图3为本申请一示例性实施例提供的对容器镜像数据进行隔离的示意图;
图4为本申请另一示例性实施例提供的安全容器运行方法的流程示意图;
图5为本申请一示例性实施例提供的由不同的沙箱进行容器镜像数据进行下载、保存并管理的示意图;
图6为本申请一示例性实施例提供的安全容器运行方法在容器运行时组件一侧执行的流程示意图;
图7为本申请另一示例性实施例提供的安全容器运行方法在容器运行时组件一侧执行的流程示意图;
图8为本申请一示例性实施例提供的镜像数据下载方法的流程示意图;
图9为本申请一示例性实施例提供的计算机设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
容器技术作为一种轻量级的虚拟化技术已被广泛使用。容器部署在物理机的内核上,当多个容器部署在物理机的同一个内核上时,多个容器之间存在相互影响。同时,当容器中运行不可信代码时,物理机容易受到攻击。为提升容器安全性,可在一个受限的安全环境中运行安全容器实例,从而保障物理机的安全性。
目前,存在一种安全容器方案,即:Kata Containers(Kata容器,一种使用虚拟内核将容器运行在隔离环境中,从而实现安全容器的技术)。Kata Containers使用KVM(Kernel-based Virtual Machine,基于内核的虚拟机)技术,为物理机上的每个容器实例运行一个独立的内核,以确保容器实例的安全可靠性。其中,KVM是Linux(一种操作***)下的虚拟化技术,可将Linux转变为虚拟机监测程序,使主机计算机能够运行多个隔离的虚拟环境。
Kata Containers方案主要以计算安全为主,将容器镜像中的代码运行在KVM创建的独立内核中,但是同一物理机上的容器实例的数据仍旧在物理机的内核中,并未进行隔离。即容器数据(例如容器镜像数据、容器数据卷等)仍旧处于共享状态。这种方案适用于私有云的场景下,物理机内核上的数据属于同一用户,因此安全风险较低。但是,在公有云的场景下,同一物理机上运行的不同容器实例属于不同用户,当不同容器实例的容器数据在物理机的内核上被共享时,存在一定的数据安全风险。
以容器镜像数据为例。其中,容器镜像数据使用分层技术打包创建容器所需要的文件,容器镜像数据的每一层称之为一个layer(层),一个容器镜像由若干个层组成。其中,每一个layer可以复用,不同容器镜像可引用同一个layer。在公有云场景下,存在一个用户的容器镜像使用了另一个用户的容器镜像的风险。
例如,当容器运行时组件containerd通过CRI(Container Runtime Interface,容器运行时接口)接口实现的与容器管控平台Kubernetes对接时,CRI包括2个模块,即imageService(镜像服务)模块以及runtimeService(运行时服务)模块。其中,imageService主要用于实现关于容器镜像的相关操作,例如镜像的查询、下载、删除等操作。runtimeService主要用于实现关于容器运行时组件的相关操作,包括容器实例的创建,删除,查询、运维等操作。
在imageService的实现过程中,物理机上所有容器的镜像都在containerd中的同一个管理空间中保存,进而导致多租户情况下不同租户共享所有的容器镜像layer的情况。例如,如图1所示,containerd的容器镜像存储空间中保存有容器镜像A以及容器镜像B的镜像数据:layer1、layer2、layer3、layer4。创建用户1的容器实例时,可通过文件映射的方式将containerd中的layer1、layer2、layer3加载到第一沙箱1的内存中,得到容器镜像A。创建用户2的容器实例时,通过文件映射的方式将containerd中的layer1、layer2、layer4加载到第二沙箱2的内存中,得到容器镜像B。其中,layer1、layer2被用户1以及用户2共享使用,存在一定的安全风险。
针对上述技术问题,在本申请一些实施例中,提供了一种解决方案,以下将结合附图,详细说明本申请各实施例提供的技术方案。
图2为本申请一示例性实施例提供的安全容器运行方法的流程示意图,如图2所示,包括:
步骤201、响应创建容器的请求,通过容器运行时组件向所述容器对应的沙箱发送镜像数据获取请求。
步骤202、通过所述沙箱将所述容器对应的容器镜像数据返回至所述容器运行时组件。
步骤203、通过所述容器运行时组件,根据所述容器镜像数据以及容器运行参数,生成容器实例的启动数据。
步骤204、通过所述容器运行时组件,将所述启动数据发送至所述沙箱。
步骤205、通过所述沙箱根据所述启动数据运行所述容器对应的容器实例。
本实施例的执行主体可为任意一台物理机,例如主机或者服务器。若实现为服务器,则该服务器可以实现为常规服务器设备也可以实现为云服务器设备或者弹性云服务器实例等。该物理机的内核上运行容器运行时组件(containerd),该容器运行时组件用于基于镜像数据创建容器、运行容器并对容器实例进行管理。
为提供安全的容器运行环境,该物理机上运行有一个或者多个沙箱(Sandbox),或称沙盒。容器运行时组件可通过沙箱创建、运行并管理容器实例。当物理机上运行多个沙箱时,可为每个沙箱部署独立的容器镜像管理***,该容器镜像管理***可位于沙箱内部。其中,该容器镜像管理***至少包括:存储管理单元以及运行管理单元。在本实施例中,沙箱中的存储管理单元用于下载、保存并管理容器镜像数据(image),行为管理单元用于基于容器镜像数据运行容器实例。针对每个沙箱而言,其对应的容器镜像数据由自身对应的存储管理单元进行管理,可实现不同沙箱之间的数据隔离,提升数据安全性。
在沙箱部署有独立的容器镜像管理***的基础上,容器运行时组件在接收到创建容器的请求后,可向该容器对应的沙箱发送镜像数据获取请求。其中,该创建容器的请求可以是容器运行时组件的上层应用发起的,该上层应用可包括但不限于kubelet(容器管控平台Kubernetes中负责容器的创建与启停的组件)、docker(容器引擎)等。
其中,该创建容器的请求用于指示在物理机上的某个沙箱中创建该容器的实例。在一些实施例中,该创建容器的请求可携带容器对应的沙箱的标识,以使容器运行时组件从容器对应的沙箱中获取创建容器实例所需的数据。在另一些实施例中,容器运行时组件预存有容器与沙箱的对应关系,接收到创建某个容器的请求时,容器运行时组件可基于该对应关系,确定该容器对应的某个沙箱,并向该沙箱发送镜像数据获取请求,本实施例包含但不限于此。
上述镜像数据获取请求可由沙箱中的存储管理单元接收,存储管理单元可从预先保存的数据中确定容器镜像数据,并将容器镜像数据返回至容器运行时组件。
容器运行时组件接收到该容器镜像数据后,可根据该容器镜像数据以及容器运行参数,生成容器实例的启动数据,并将该启动数据发送至该沙箱。其中,容器运行参数可包括:创建容器所需的环境变量、命令行参数、特权标志位等等,本实施例包含但不限于此。
沙箱接收到启动数据后,可通过运行管理组件运行该启动数据,创建对应的容器实例。其中,容器实例是容器运行所需要的计算、存储、网络等资源形成的载体。
以下将结合具体的例子进行进一步说明。
如图3所示,物理机上部署有第一沙箱1、第二沙箱2。其中,第一沙箱1的容器镜像存储中,存储有容器镜像A的容器镜像数据layer1、layer2、layer3;第二沙箱2的容器镜像存储中,存储有容器镜像B的容器镜像数据layer1、layer2、layer4。数据标识相同的镜像数据layer1以及layer2,分别被隔离存储在不同的沙箱中。containerd接收到创建用户1的容器的请求时,可向第一沙箱1发送镜像数据获取请求。第一沙箱1可根据该镜像数据获取请求向containerd返回容器镜像数据A。containerd可根据容器镜像数据A以及容器运行参数,生成用户1的容器实例的启动数据,并将该启动数据发送给第一沙箱1。第一沙箱1接收到该启动数据后,可根据该启动数据创建用户1的容器实例。同理,containerd接收到创建用户2的容器的操作时,可向第二沙箱2发送镜像数据获取请求。第二沙箱2可根据该镜像数据获取请求向containerd返回容器镜像数据B。containerd可根据容器镜像数据B以及容器运行参数,生成用户1的容器实例的启动数据,并将该启动数据发送给第二沙箱2。第二沙箱2接收到该启动数据后,可根据该启动数据创建用户2的容器实例。
在本实施例中,安全容器所需的容器镜像数据由安全容器所在的沙箱独立进行管理。当存在创建容器实例的需求时,容器运行时组件可从沙箱中获取容器镜像数据,并基于容器镜像数据生成容器实例的启动数据。将该启动数据发送至沙箱后,沙箱可基于该启动数据进行容器的创建。在这种实施方式中,物理机上部署的沙箱一方面可为不同的容器实例创造运行所需的安全隔离环境,另一方面,创建容器实例所需的容器镜像数据从对应的沙箱中获取,实现了不同容器实例在数据方面相互隔离。从而,可避免物理机上的多个沙箱运行不同容器实例时,不同容器实例共享镜像数据导致的数据安全风险。
在本申请的上述以及下述实施例中,物理机上的每个沙箱可运行在物理机上独立的虚拟内核(virtual central processing unit,vcpu)中,该沙箱可基于Kata技术实现。当物理机上部署有多个沙箱时,多个沙箱的分别运行在不同的虚拟内核上,进而,可进一步降低不同沙箱内运行的容器实例之间产生相互干扰的可能性,提升容器实例的运行环境的安全性。
当然,在一些其他的可选实施例中,沙箱也可直接运行在物理机的内核中。当物理机上部署有多个沙箱时,多个沙箱可同时部署在物理机的同一个内核上,本实施例不做限制。
图4为本申请另一示例性实施例提供的安全容器运行方法的流程示意图,如图4所示,该方法包括:
步骤401、通过容器运行时组件接收镜像数据下载指令,所述镜像数据下载指令携带沙箱标识以及镜像标识。
步骤402、通过所述容器运行时组件将所述镜像数据下载指令路由至所述沙箱标识对应的沙箱。
步骤403、通过所述沙箱,根据所述镜像数据下载指令,向容器仓库请求下载并保存与所述镜像标识对应的容器镜像数据。
步骤404、响应创建容器的请求,通过所述容器运行时组件向所述沙箱发送镜像数据获取请求。
步骤405、通过所述沙箱将所述容器对应的容器镜像数据返回至所述容器运行时组件。
步骤406、通过所述容器运行时组件,根据所述容器镜像数据以及容器运行参数,生成容器实例的启动数据。
步骤407、通过所述容器运行时组件,将所述启动数据发送至所述沙箱。
步骤408、通过所述沙箱根据所述启动数据运行所述容器对应的容器实例。
在本实施例中,步骤404~步骤408的可选实施方式可参考前述实施例的记载,此处不赘述。
在步骤401中,当根据用户需求或者功能需求需要创建容器实例时,容器管控平台可向物理机下发镜像数据下载指令。物理机可通过容器运行时组件接收该镜像数据下载指令,该镜像数据下载指令携带有沙箱的标识以及镜像标识。其中,该沙箱标识可以是指定使用的沙箱的名称、编号、标签或者其他ID(Identity,身份标识)信息等。该镜像标识,可以是创建容器所需的镜像数据的名称或者镜像ID等。
其中,物理机上可部署有至少一个沙箱,在部署沙箱时,容器运行时组件可获取该至少一个沙箱与各自对应的沙箱标识的对应关系。容器运行时接收到镜像数据下载指令后,可根据该沙箱标识以及前述对应关系,确定用于执行镜像下载指令的沙箱,并将该镜像数据下载指令路由至对应的沙箱。
沙箱接收到镜像数据下载指令后,可指定的向容器仓库(例如,Registry)请求下载容器实例的容器镜像数据。其中,Registry是一个通过HTTP(Hyper Text TransferProtocol,超文本传输协议)暴露镜像的元数据和文件以供下载的容器仓库。下载到容器镜像数据后,沙箱可将下载到的容器镜像数据保存在沙箱内的存储空间中,以与沙箱外的其他数据实现安全隔离。
基于前述实施例的记载可知,沙箱中被部署了独立的容器镜像管理***,该容器镜像管理***至少包括:存储管理单元以及运行管理单元。在本实施例中,沙箱可基于存储管理单元接收容器运行时组件路由来的镜像数据下载指令,并根据该镜像数据下载指令执行镜像数据下载操作。下载镜像数据后,可由存储管理单元对该镜像数据进行保存、管理、查询等操作。当容器运行时组件向存储管理单元发送镜像数据获取请求时,存储管理单元可将该容器镜像数据返回至容器运行时组件,以供生成容器实例的启动数据。
以下将结合具体的例子进行示例性说明。
如图5所示,物理机上部署有第一沙箱1、第二沙箱2。其中,第一沙箱1与用户1的容器实例对应,第二沙箱2与用户2的容器实例对应。假设,在共有云环境下,存在用户1以及用户2。
存在创建用户1的容器的需求时,容器管控平台可向物理机上的containerd发送镜像数据下载指令。containerd接收镜像数据下载指令,该镜像数据下载指令携带沙箱标识ID1以及镜像标识ID2。沙箱标识ID1用于标识第一沙箱1,containerd可将该镜像数据下载指令路由至第一沙箱1。第一沙箱1接收到该镜像数据下载指令后,可通过第一沙箱1中的存储管理单元,向容器仓库请求下载镜像标识ID2对应的容器镜像数据A,并保存该容器镜像数据A。
下载镜像数据后,容器管控平台可向containerd发送容器创建请求。当containerd接收到容器创建请求后,可向第一沙箱1发送镜像数据获取请求。第一沙箱1可根据该镜像数据获取请求向containerd返回容器镜像数据A。containerd可根据容器镜像数据A以及容器运行参数,生成用户1的容器实例的启动数据,并将该启动数据发送给第一沙箱1。第一沙箱1接收到该启动数据后,可根据该启动数据创建用户1的容器实例。
同理,存在创建用户2的容器的需求时,容器管控平台可向物理机上的containerd发送镜像数据下载指令。containerd接收镜像数据下载指令,该镜像数据下载指令携带沙箱标识ID3以及镜像标识ID4。沙箱标识ID3用于标识第二沙箱2,containerd可将该镜像数据下载指令路由至第二沙箱2。第二沙箱2接收到该镜像数据下载指令后,可通过第二沙箱2中的存储管理单元,向容器仓库请求下载镜像标识ID4对应的容器镜像数据B,并保存该容器镜像数据B。
下载镜像数据后,容器管控平台可向containerd发送容器创建请求。当containerd接收到容器创建请求后,可向第二沙箱2发送镜像数据获取请求。第二沙箱2可根据该镜像数据获取请求向containerd返回容器镜像数据B。containerd可根据容器镜像数据B以及容器运行参数,生成用户2的容器实例的启动数据,并将该启动数据发送给第二沙箱2。第二沙箱2接收到该启动数据后,可根据该启动数据创建用户2的容器实例。
在本实施例中,当容器运行时组件接收到镜像数据下载指令时,不直接从容器仓库下载容器镜像数据,而是将镜像数据下载指令路由至对应的沙箱,以使得沙箱进行容器镜像数据的下载、保存及管理。基于这种实施方式,可避免不同容器实例的容器镜像数据处于共享状态,可降低容器镜像数据的安全风险。同时,这种方案中,基于沙箱实现了容器运行环境的隔离以及容器镜像数据的隔离,解决了公有云环境下的多租户数据安全问题。
在一些可选的实施例中,沙箱向容器仓库请求下载容器实例的容器镜像数据之后,还可生成容器镜像数据的管理元数据,并将该管理元数据保存在沙箱中的指定存储空间。其中,该管理元数据用于记录镜像数据的内容、标识以及数量等信息。将镜像数据的管理元数据保存在沙箱内,实现了管理元数据的安全隔离,进一步提升了不同容器实例之间的数据安全性,有利于满足公有云场景下的多租户数据安全需求。
图6为本申请一示例性实施例提供的安全容器运行方法在容器运行时组件一侧执行的流程示意图,如图6所示,该方法在容器运行时组件一侧执行时,主要包括以下步骤:
步骤601、物理机上的容器运行时组件响应创建容器的请求,向所述物理机上与所述容器对应的沙箱发送镜像数据获取请求。
步骤602、容器运行时组件接收所述沙箱根据所述镜像数据获取请求返回的容器镜像数据。
步骤603、容器运行时组件根据所述容器镜像数据以及容器运行参数,生成容器实例的启动数据。
步骤604、容器运行时组件将所述启动数据发送至所述沙箱,以使所述沙箱根据所述启动数据运行所述容器对应的容器实例。
进一步可选地,向所述物理机上与所述容器对应的沙箱发送镜像数据获取请求之前,还包括:所述容器运行时组件接收镜像数据下载指令,所述镜像数据下载指令携带沙箱标识以及镜像标识;将所述镜像数据下载指令路由至所述沙箱标识对应的所述沙箱,以使所述沙箱下载并保存与所述镜像标识对应的所述容器镜像数据。
在本实施例中,安全容器所需的容器镜像数据由安全容器所在的沙箱独立进行管理。当存在创建容器实例的需求时,容器运行时组件可从沙箱中获取容器镜像数据,并基于容器镜像数据生成容器实例的启动数据。将该启动数据发送至沙箱后,沙箱可基于该启动数据进行容器的创建。在这种实施方式中,物理机上部署的沙箱一方面可为不同的容器实例创造运行所需的安全隔离环境,另一方面,创建容器实例所需的容器镜像数据从对应的沙箱中获取,实现了不同容器实例在数据方面相互隔离。从而,可避免物理机上的多个沙箱运行不同容器实例时,不同容器实例共享镜像数据导致的数据安全风险。
图7为本申请一示例性实施例提供的安全容器运行方法在沙箱一侧执行的流程示意图,如图7所示,该方法在沙箱一侧执行时,主要包括以下的步骤:
步骤701、物理机中的沙箱接收所述物理机中的容器运行时组件发送的镜像数据获取请求。
步骤702、沙箱将管理的容器镜像数据发送至所述容器进行时组件。
步骤703、沙箱接收所述容器进行时组件根据所述容器镜像数据返回的容器实例的启动数据。
步骤704、沙箱根据所述启动数据,启动运行所述容器实例。
其中,沙箱部署在物理机上,物理机上部署多个沙箱时,多个沙箱分别对应独立的容器镜像管理***。本实施例由沙箱执行的各步骤,可基于沙箱对应的容器镜像管理***实现。例如,沙箱可通过对应的容器镜像管理***,接收所述物理机中的容器运行时组件发送的镜像数据获取请求。沙箱可通过对应的容器镜像管理***,将管理的容器镜像数据发送至所述容器进行时组件;沙箱可通过对应的容器镜像管理***,接收所述容器进行时组件根据所述容器镜像数据返回的容器实例的启动数据。
进一步可选地,将管理的容器镜像数据发送至所述容器进行时组件之前,还包括:所述沙箱接收所述容器运行时组件发送的镜像数据下载指令;所述镜像数据下载指令携带镜像标识;向容器仓库请求下载与所述镜像标识对应的所述容器镜像数据;将所述容器镜像数据保存所述沙箱中的指定存储空间。在一些可选的实施例中,沙箱可通过对应的容器镜像管理***,接收所述容器运行时组件发送的镜像数据下载指令;所述镜像数据下载指令携带镜像标识。沙箱可通过对应的容器镜像管理***,向容器仓库请求下载与所述镜像标识对应的所述容器镜像数据;沙箱可通过对应的容器镜像管理***,将所述容器镜像数据保存所述沙箱中的指定存储空间。
进一步可选地,沙箱向容器仓库请求下载与所述镜像标识对应的所述容器镜像数据之后,还包括:生成所述容器镜像数据的管理元数据;将所述管理元数据保存在所述沙箱中的所述指定存储空间。在一些实施例中,生成所述容器镜像数据的管理元数据的操作可由沙箱对应的容器镜像管理***实现。容器镜像管理***获取容器镜像数据的管理元数据后,可将所述管理元数据保存在沙箱中的指定存储空间,不再赘述。
进一步可选地,所述沙箱运行在所述物理机的内核中;或者,所述沙箱运行在所述物理机上独立的虚拟内核中。
在本实施例中,安全容器所需的容器镜像数据由安全容器所在的沙箱独立进行管理。当存在创建容器实例的需求时,容器运行时组件可从沙箱中获取容器镜像数据,并基于容器镜像数据生成容器实例的启动数据。将该启动数据发送至沙箱后,沙箱可基于该启动数据进行容器的创建。在这种实施方式中,物理机上部署的沙箱一方面可为不同的容器实例创造运行所需的安全隔离环境,另一方面,创建容器实例所需的容器镜像数据从对应的沙箱中获取,实现了不同容器实例在数据方面相互隔离。从而,可避免物理机上的多个沙箱运行不同容器实例时,不同容器实例共享镜像数据导致的数据安全风险。
除前述实施例提供的安全容器运行方法之外,本申请实施例还提供一种镜像数据下载方法。图8为本申请一示例性实施例提供的镜像数据下载方法的流程示意图,如图6所示,该方法包括:
步骤801、通过容器运行时组件接收镜像数据下载指令,所述镜像数据下载指令携带沙箱标识以及镜像标识。
步骤802、通过所述容器运行时组件将所述镜像数据下载指令路由至所述沙箱标识对应的沙箱。
步骤803、通过所述沙箱,根据所述镜像数据下载指令,向容器仓库请求下载并保存所述镜像标识对应的容器镜像数据。
其中,沙箱部署在物理机上,物理机上部署多个沙箱时,多个沙箱分别对应独立的容器镜像管理***。
基于此,在一些实施例中,通过所述沙箱,根据所述镜像数据下载指令,向容器仓库请求下载并保存所述镜像标识对应的容器镜像数据时,可通过沙箱中的容器镜像管理***,根据所述镜像数据下载指令,向容器仓库请求下载并保存所述镜像标识对应的容器镜像数据。
进一步可选地,沙箱向容器仓库请求下载与所述镜像标识对应的所述容器镜像数据之后,还包括:生成所述容器镜像数据的管理元数据;将所述管理元数据保存在所述沙箱中的所述指定存储空间。在一些实施例中,生成所述容器镜像数据的管理元数据的操作可由沙箱对应的容器镜像管理***实现。容器镜像管理***获取容器镜像数据的管理元数据后,可将所述管理元数据保存在沙箱中的指定存储空间,不再赘述。
在本实施例中,当容器运行时组件接收到镜像数据下载指令时,不直接从容器仓库下载容器镜像数据,而是将镜像数据下载指令路由至对应的沙箱,以使得沙箱进行容器镜像数据的下载、保存及管理。基于这种实施方式,可避免不同容器实例的容器镜像数据处于共享状态,可降低容器镜像数据的安全风险。同时,这种方案中,基于沙箱实现了容器运行环境的隔离以及容器镜像数据的隔离,解决了公有云环境下的多租户数据安全问题。
需要说明的是,上述实施例所提供方法的各步骤的执行主体均可以是同一设备,或者,该方法也由不同设备作为执行主体。比如,步骤301至步骤304的执行主体可以为设备A;又比如,步骤301和302的执行主体可以为设备A,步骤303的执行主体可以为设备B;等等。
另外,在上述实施例及附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如301、302等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。
需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
图9示意了本申请一示例性实施例提供的计算机设备的结构示意图,该计算机设备可用于执行前述实施例提供的容器运行方法以及镜像数据下载方法。在不同的应用场景中,该计算机设备的时限形态不同,例如该计算机设备可实现为常规服务器也可实现为云服务器,本实施例不做限制。
如图9所示,该计算机设备包括:存储器901、处理器902以及通信组件903。
存储器901,用于存储计算机程序,并可被配置为存储其它各种数据以支持在计算机设备上的操作。这些数据的示例包括用于在计算机设备上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。
其中,存储器901可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
处理器902,与存储器901耦合,用于执行存储器901中的计算机程序,以用于执行指定的方法步骤。
在一些实施例中,处理器902可执行以下的安全容器运行方法中的步骤:通过计算机中的容器运行时组件响应创建容器的请求,向所述计算机上与所述容器对应的沙箱发送镜像数据获取请求;接收所述沙箱根据所述镜像数据获取请求返回的容器镜像数据;根据所述容器镜像数据以及容器运行参数,生成容器实例的启动数据;将所述启动数据发送至所述沙箱,以使所述沙箱根据所述启动数据运行所述容器对应的容器实例。
进一步可选地,处理器902可在接收所述沙箱根据所述镜像数据获取请求返回的容器镜像数据时,具体用于:接收所述沙箱对应的容器镜像管理***根据所述镜像数据获取请求返回的容器镜像数据。
进一步可选地,向所述计算机上与所述容器对应的沙箱发送镜像数据获取请求之前,处理器902还用于:通过所述容器运行时组件接收镜像数据下载指令,所述镜像数据下载指令携带沙箱标识以及镜像标识;将所述镜像数据下载指令路由至所述沙箱标识对应的所述沙箱,以使所述沙箱下载并保存与所述镜像标识对应的所述容器镜像数据。
在另一些实施例中,处理器902可执行以下的安全容器运行方法中的步骤:通过计算机中的沙箱接收所述计算机中的容器运行时组件发送的镜像数据获取请求;将管理的容器镜像数据发送至所述容器进行时组件;接收所述容器进行时组件根据所述容器镜像数据返回的容器实例的启动数据;根据所述启动数据,启动运行所述容器实例。
进一步可选地,将管理的容器镜像数据发送至所述容器进行时组件之前,处理器902还用于:所述沙箱接收所述容器运行时组件发送的镜像数据下载指令;所述镜像数据下载指令携带镜像标识;向容器仓库请求下载与所述镜像标识对应的所述容器镜像数据;将所述容器镜像数据保存所述沙箱中的指定存储空间。
进一步可选地,向容器仓库请求下载与所述镜像标识对应的所述容器镜像数据之后,处理器902还用于:生成所述容器镜像数据的管理元数据;将所述管理元数据保存在所述沙箱中的所述指定存储空间。
进一步可选地,所述沙箱运行在所述计算机的内核中;或者,所述沙箱运行在所述计算机上独立的虚拟内核中。
在又一些实施例中,处理器902可执行以下的安全容器运行方法中的步骤:响应创建容器的请求,通过容器运行时组件向与所述容器对应的沙箱发送镜像数据获取请求;通过所述沙箱将所述容器对应的容器镜像数据返回至所述容器运行时组件;通过所述容器运行时组件,根据所述容器镜像数据以及容器运行参数,生成容器实例的启动数据;通过所述容器运行时组件,将所述启动数据发送至所述沙箱;通过所述沙箱,根据所述启动数据运行所述容器对应的容器实例。
进一步可选地,通过所述沙箱将所述容器对应的容器镜像数据返回至所述容器运行时组件之前,处理器902还用于:通过所述容器运行时组件接收镜像数据下载指令,所述镜像数据下载指令携带沙箱标识以及镜像标识;通过所述容器运行时组件将所述镜像数据下载指令路由至所述沙箱标识对应的所述沙箱;通过所述沙箱根据所述镜像数据下载指令,向容器仓库请求下载并保存与所述镜像标识对应的所述容器镜像数据。
本实施例中,安全容器所需的容器镜像数据由安全容器所在的沙箱独立进行管理。当存在创建容器实例的需求时,容器运行时组件可从沙箱中获取容器镜像数据,并基于容器镜像数据生成容器实例的启动数据。将该启动数据发送至沙箱后,沙箱可基于该启动数据进行容器的创建。在这种实施方式中,计算机上部署的沙箱一方面可为不同的容器实例创造运行所需的安全隔离环境,另一方面,创建容器实例所需的容器镜像数据从对应的沙箱中获取,实现了不同容器实例在数据方面相互隔离。从而,可避免计算机上的多个沙箱运行不同容器实例时,不同容器实例共享镜像数据导致的数据安全风险。
在又一些实施例中,处理器902可执行以下的镜像数据下载方法中的步骤:通过容器运行时组件接收镜像数据下载指令,所述镜像数据下载指令携带沙箱标识以及镜像标识;通过所述容器运行时组件将所述镜像数据下载指令路由至所述沙箱标识对应的沙箱;通过所述沙箱,根据所述镜像数据下载指令,向容器仓库请求下载并保存所述镜像标识对应的容器镜像数据。
进一步可选地,处理器902在通过所述沙箱,根据所述镜像数据下载指令,向容器仓库请求下载并保存所述镜像标识对应的容器镜像数据时,具体用于:通过所述沙箱中的容器镜像管理***,根据所述镜像数据下载指令,向容器仓库请求下载并保存所述镜像标识对应的容器镜像数据。
在本实施例中,当容器运行时组件接收到镜像数据下载指令时,不直接从容器仓库下载容器镜像数据,而是将镜像数据下载指令路由至对应的沙箱,以使得沙箱进行容器镜像数据的下载、保存及管理。基于这种实施方式,可避免不同容器实例的容器镜像数据处于共享状态,可降低容器镜像数据的安全风险。同时,这种方案中,基于沙箱实现了容器运行环境的隔离以及容器镜像数据的隔离,解决了公有云环境下的多租户数据安全问题。
进一步,如图9所示,该计算机设备还包括:电源组件904等其它组件。图9中仅示意性给出部分组件,并不意味着计算机设备只包括图9所示组件。
其中,通信组件903被配置为便于通信组件所在设备和其他设备之间有线或无线方式的通信。通信组件所在设备可以接入基于通信标准的无线网络,如WiFi,2G、3G、4G或5G,或它们的组合。在一个示例性实施例中,通信组件经由广播信道接收来自外部广播管理***的广播信号或广播相关信息。在一个示例性实施例中,通信组件可基于近场通信(NFC)技术、射频识别(RFID)技术、红外数据协会(IrDA)技术、超宽带(UWB)技术、蓝牙(BT)技术和其他技术来实现。
其中,电源组件904,为电源组件所在设备的各种组件提供电力。电源组件可以包括电源管理***,一个或多个电源,及其他与为电源组件所在设备生成、管理和分配电力相关联的组件。
相应地,本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,计算机程序被执行时能够实现上述方法实施例中可由服务器执行的各步骤。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (14)
1.一种安全容器运行方法,其中,包括:
物理机上的容器运行时组件响应创建容器的请求,向所述物理机上与所述容器对应的沙箱发送镜像数据获取请求;
接收所述沙箱根据所述镜像数据获取请求返回的容器镜像数据;
根据所述容器镜像数据以及容器运行参数,生成容器实例的启动数据;
将所述启动数据发送至所述沙箱,以使所述沙箱根据所述启动数据运行所述容器对应的容器实例。
2.根据权利要求1所述的方法,其中,向所述物理机上与所述容器对应的沙箱发送镜像数据获取请求之前,还包括:
所述容器运行时组件接收镜像数据下载指令,所述镜像数据下载指令携带沙箱标识以及镜像标识;
将所述镜像数据下载指令路由至所述沙箱标识对应的所述沙箱,以使所述沙箱下载并保存与所述镜像标识对应的所述容器镜像数据。
3.根据权利要求1所述的方法,其中,接收所述沙箱根据所述镜像数据获取请求返回的容器镜像数据,包括:
接收所述沙箱对应的容器镜像管理***根据所述镜像数据获取请求返回的容器镜像数据。
4.一种安全容器运行方法,其中,包括:
物理机中的沙箱接收所述物理机中的容器运行时组件发送的镜像数据获取请求;
将管理的容器镜像数据发送至所述容器进行时组件;
接收所述容器进行时组件根据所述容器镜像数据返回的容器实例的启动数据;
根据所述启动数据,启动运行所述容器实例。
5.根据权利要求4所述的方法,其中,将管理的容器镜像数据发送至所述容器进行时组件之前,还包括:
所述沙箱接收所述容器运行时组件发送的镜像数据下载指令;所述镜像数据下载指令携带镜像标识;
向容器仓库请求下载与所述镜像标识对应的所述容器镜像数据;
将所述容器镜像数据保存所述沙箱中的指定存储空间。
6.根据权利要求5所述的方法,其中,向容器仓库请求下载与所述镜像标识对应的所述容器镜像数据之后,还包括:
生成所述容器镜像数据的管理元数据;
将所述管理元数据保存在所述沙箱中的所述指定存储空间。
7.根据权利要求4-6任一项所述的方法,其中,所述沙箱运行在所述物理机的内核中;或者,所述沙箱运行在所述物理机上独立的虚拟内核中。
8.一种安全容器运行方法,其中,包括:
响应创建容器的请求,通过容器运行时组件向与所述容器对应的沙箱发送镜像数据获取请求;
通过所述沙箱将所述容器对应的容器镜像数据返回至所述容器运行时组件;
通过所述容器运行时组件,根据所述容器镜像数据以及容器运行参数,生成容器实例的启动数据;
通过所述容器运行时组件,将所述启动数据发送至所述沙箱;
通过所述沙箱,根据所述启动数据运行所述容器对应的容器实例。
9.根据权利要求8所述的方法,其中,通过所述沙箱将所述容器对应的容器镜像数据返回至所述容器运行时组件之前,还包括:
通过所述容器运行时组件接收镜像数据下载指令,所述镜像数据下载指令携带沙箱标识以及镜像标识;
通过所述容器运行时组件将所述镜像数据下载指令路由至所述沙箱标识对应的所述沙箱;
通过所述沙箱根据所述镜像数据下载指令,向容器仓库请求下载并保存与所述镜像标识对应的所述容器镜像数据。
10.一种镜像数据下载方法,其中,包括:
通过容器运行时组件接收镜像数据下载指令,所述镜像数据下载指令携带沙箱标识以及镜像标识;
通过所述容器运行时组件将所述镜像数据下载指令路由至所述沙箱标识对应的沙箱;
通过所述沙箱,根据所述镜像数据下载指令,向容器仓库请求下载并保存所述镜像标识对应的容器镜像数据。
11.根据权利要求10所述的方法,其中,通过所述沙箱,根据所述镜像数据下载指令,向容器仓库请求下载并保存所述镜像标识对应的容器镜像数据,包括:
通过所述沙箱中的容器镜像管理***,根据所述镜像数据下载指令,向容器仓库请求下载并保存所述镜像标识对应的容器镜像数据。
12.一种计算机设备,其中,包括:存储器和处理器;
所述存储器用于存储一条或多条计算机指令;
所述处理器用于执行所述一条或多条计算机指令以用于:执行权利要求1-11任一项所述的方法中的步骤。
13.一种存储有计算机程序的计算机可读存储介质,其中,计算机程序被处理器执行时能够实现权利要求1-11任一项所述的方法中的步骤。
14.一种计算机程序产品,包括计算机程序/指令,其中,当计算机程序被处理器执行时,致使处理器实现权利要求1-11任一项所述方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110977275.0A CN113886004A (zh) | 2021-08-24 | 2021-08-24 | 安全容器运行、镜像数据下载方法、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110977275.0A CN113886004A (zh) | 2021-08-24 | 2021-08-24 | 安全容器运行、镜像数据下载方法、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113886004A true CN113886004A (zh) | 2022-01-04 |
Family
ID=79011409
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110977275.0A Pending CN113886004A (zh) | 2021-08-24 | 2021-08-24 | 安全容器运行、镜像数据下载方法、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113886004A (zh) |
-
2021
- 2021-08-24 CN CN202110977275.0A patent/CN113886004A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112019475B (zh) | 无服务器架构下的资源访问方法、设备、***及存储介质 | |
US11221780B2 (en) | Size adjustable volumes for containers | |
CN110032413B (zh) | 一种桌面虚拟化方法、相关设备及计算机存储介质 | |
CN110011823B (zh) | 物联网设备的远程管理实现方法和装置 | |
CN108255497B (zh) | 一种应用的部署方法及装置 | |
US10108442B1 (en) | Optimization and affinity for hypervisor-based just-in-time translator | |
CN111930473B (zh) | 在容器云上部署图像识别服务的方法与设备 | |
US20130297795A1 (en) | Owner command execution in a multi-tenant cloud hosting environment | |
US20130297685A1 (en) | Mechanism for communications between a server orchestration system and a messaging system | |
CN102402446A (zh) | 应用软件的安装方法和应用软件的安装装置 | |
CN102439564A (zh) | 在Linux容器中启动应用程序的方法和*** | |
CN108829868B (zh) | 数据显示方法和装置、存储介质及电子装置 | |
CN108268609B (zh) | 一种文件路径的建立、访问方法和装置 | |
WO2018086437A1 (zh) | 一种加速器加载方法、***和加速器加载装置 | |
CN111897623B (zh) | 一种集群管理方法、装置、设备及存储介质 | |
CN111831396A (zh) | 基于Docker软硬一体化的交付方法及装置 | |
US20140067864A1 (en) | File access for applications deployed in a cloud environment | |
CN109992956A (zh) | 容器的安全策略的处理方法和相关装置 | |
US9940329B2 (en) | System and method for providing a climate data persistence service | |
CN114995948A (zh) | 下载安全容器镜像文件的方法、装置、设备及*** | |
US11429596B2 (en) | Update for configuration file | |
CN111382136B (zh) | 文件***镜像及文件请求方法 | |
CN111459619A (zh) | 一种基于云平台实现服务的方法和装置 | |
CN113886004A (zh) | 安全容器运行、镜像数据下载方法、设备及存储介质 | |
CN116467704A (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40066049 Country of ref document: HK |