容器运行时:containerd

本篇是第八部分“生态篇”的第二篇。在这个部分,我会为你介绍 Docker>Docker 生态中的相关项目,以及如何参与到 Docker>Docker 项目中,最后会聊聊 Docker>Docker 未来的走向,上篇,我为你介绍下 Docker>DockerKubernetes>Kubernetes 相关的内容。本篇,我们来聊聊容器运行时 containerd。

背景

在之前的《Docker>Docker 核心架构及拆解(上)》中,我曾为你介绍了一些 containerd 与 Docker>Docker 之间的联系。也可以说 containerd 目前是 Docker>Docker 的运行时,是 Docker>Docker 核心架构中一个重要的组成部分了。

那么 containerd 为何有如此重要的作用呢?这就要从 containerd 诞生的背景开始说起了。

containerd 是由 Docker>Docker Inc. 创建并开源出的容器运行时工具,自 Docker>Docker v1.11 中开始集成进 Docker>Docker。在 2017 年时,Docker>Docker 将 containerd 捐给 CNCF,并且 containerd 于 2019 年 2 月底正式从 CNCF 毕业。

我认为 containerd 出现的主要原因有以下几个:

  • 为了减小 Docker>Docker 的体积,将其核心组件进行拆分,这样所有的组件都可以分解成单独的项目并且不断迭代改进,Docker>Docker 可以选择性的进行集成。这有点像我们谈论微服务架构时的思路。
  • 为了改善 Docker>Docker 的性能,containerd 专门为性能做过优化,使用它作为 Docker>Docker 的容器运行时管理组件,可显著提升 Docker>Docker 的性能。
  • 为了实现容器生态的行业标准,Docker>Docker 将 containerd 分拆成了独立项目,并捐给了 CNCF 这个中立基金会。这样无论是

http://www.niftyadmin.cn/n/1708742.html

相关文章

Docker 与 Kubernetes

本篇是第八部分“生态篇”的第一篇。在这个部分,我会为你介绍 Docker 生态中的相关项目,以及如何参与到 Docker 项目中,最后会聊聊 Docker 未来的走向,本篇,我为你介绍下 Docker 与 Kubernetes 相关的内容。 整个专栏我们基本都在聊 Docker 的核心原理及其应用,本篇,我们…

Docker 网络原理

本篇是第七部分“网络篇”的第八篇。在这个部分,我会为你由浅入深的介绍 Docker 网络相关的内容。包括 Docker 网络基础及其实现和内部原理等。上篇,我为你介绍了 Docker 内部 DNS 的原理,本篇,我们来总结下 Docker 网络原理。 Docker 网络相关的原理及实践,在前面我已经基…

【戒烟】戒烟三个月【纪念】

成功戒烟三个月,2010-7-19----2010-10-19,很强烈的祝贺 !!!!!!!! !!!!!!!&…

驰骋工作流程如何与您的系统进行耦合

请参考,视频讲解。 http://you.video.sina.com.cn/a/4344444-1618288504.html转载于:https://www.cnblogs.com/ccflow/archive/2010/10/26/1861595.html

Docker 内部 DNS 原理

本篇是第七部分“网络篇”的第六篇。在这个部分,我会为你由浅入深的介绍 Docker 网络相关的内容。包括 Docker 网络基础及其实现和内部原理等。上篇,我为你介绍了 Docker 的一个重要组件 docker-proxy 的工作原理,本篇,我们来聊聊 Docker 内部 DNS 的原理。 在之前的内容《…

docker-proxy 的原理

本篇是第七部分“网络篇”的第五篇。在这个部分,我会为你由浅入深的介绍 Docker 网络相关的内容。包括 Docker 网络基础及其实现和内部原理等。上篇,我为你介绍了 Docker 如何利用 iptables 为容器提供网络。本篇,我们深入了解下之前提到的 Docker 的一个组件 docker-proxy …

Android播放音频到耳机,android – Exoplayer:如何通过耳机播放音频?

我正在使用以下代码在设备接近任何对象时将音频流切换到耳机:Overridepublic void onSensorChanged(SensorEvent event) {if (mAudioManager.isWiredHeadsetOn() || !(mCurrentPlaybackStatus STATUS_PLAYING|| mCurrentPlaybackStatus STATUS_PREPARING)) {retur…

RichTextBox的一些使用方法

RichTextBox的一些使用方法(转) 收藏 1。获取文本框行数 //获取文本框行数 [DllImport("user32.dll", EntryPoint "SendMessageA")] private static extern int SendMessage(IntPtr hwnd, int wMsg, IntPtr w…