Java编程

鲁班学院高级java,动脑学院java高级课程谁学过

2015-Docker&RunC

在2015年,Docker发布了RunC,这是一个轻量级的跨平台容器运行时。这基本上是一个命令行小工具,可以直接使用libcontainer来运行容器,而无需通过DockerEngine。RunC的目标是使标准容器在任何地方都可用。

OCI(TheOpenContainersInitiative)是由Docker,CoreOS和其他容器行业领导者于2015年建立的轻量级开放管理架构。它维护一些项目,例如RunC以及容器运行时规范和镜像规范。OCI的目的是围绕容器行业开发标准,例如,使用Docker创建的容器可以在任何其他容器引擎上运行。

2016-Docker&Containerd

2016年,Docker分拆了Containerd,并将其捐赠给了社区。将这个组件分解为一个单独的项目,使得Docker将容器的管理功能移出Docker的核心引擎并移入一个单独的守护进程(即Containerd)。

DockerComponents

分拆完Containerd后,Docker各组件的关系如下图所示:

至此,Docker从一个单一的软件演变成了一套相互独立的组件和项目。

Docker如何运行一个容器?

Docker引擎创建容器映像;

将容器映像传递给Containerd;

Containerd调用Containerd-Shim;

Containerd-Shim使用RunC来运行容器;

Containerd-Shim允许运行时(本例中为RunC)在启动容器后退出;

该模型带来的最大好处是在升级Docker引擎时不会中断容器的运行。

2017-容器成为主流

2017年是容器成为主流技术的一年,这就是为什么Docker在Linux之外支持众多平台(比如DockerforMac、DockerforWindows、DockerforAWS、GCP等)的原因。

当容器技术被大众接受后,Docker公司意识到需要新的生产模型,这就是为什么它开始Moby项目。

加群即可领取鲁班学院最新Java高级培训课程资料学习包 群号:700541970

Similar Posts

发表评论

邮箱地址不会被公开。 必填项已用*标注