Dockershim ======= ###### tags: `k8s` :::success The Dockershim is the CRI compliant layer between the Kubelet and the Docker daemon. ::: ![](https://i.imgur.com/jQb8L1s.png) ![](https://i.imgur.com/Zw7Ws0H.png) + ***CRI***: container runtime interface + ***OCI***: open container initiative ![](https://i.imgur.com/y0UjeCJ.png) 1. kubelet 透過 `Dockershim` `與 docker engine 連接,最後一路串接到 containerd 來創建 container。 2. 繞過 Docker 直接與後端的 `Containerd` 溝通,為了滿足這個需求也需要一個額外的應用程式 CRI-Containerd 來作為中間溝通的橋樑 3. 隨者 containerd 1.1 版本的發行, CRI-Containerd 本身的功能已經可以透過 `plugin` 的方式實現於 containerd 中,可以再少掉一層溝通的耗損,這也是上一篇所介紹的安裝環境。 4. `cri-o`, 一個完全針對 kubernetes 需求的解決方案,讓整體的溝通變得更快速與簡單。 + 目的就是要提供更好地整合,減少多餘的 `IPC` 溝通 ## references + Containerd ***1.0*** - CRI-Containerd (end of life) ![](https://i.imgur.com/pz1Mjok.png =350x) + Containerd ***1.1*** - CRI Plugin (current) ![](https://i.imgur.com/c3d0yPM.png =350x)