Kubernetes 將棄用 Docker
近日,Kubernetes 官方發(fā)布公告,宣布自 v1.20 起放棄對(duì) Docker 的支持,屆時(shí)用戶將收到 Docker 棄用警告,并需要改用其他容器運(yùn)行時(shí)。但 Docker 作為容器鏡像構(gòu)建工具的作用將不受影響,用其構(gòu)建的容器鏡像將一如既往地在集群中與所有容器運(yùn)行時(shí)正常運(yùn)轉(zhuǎn)。
官方解釋稱(chēng),Docker 作為一個(gè)完整的容器技術(shù)堆棧,在其創(chuàng)建之初就不是為了將其嵌入 Kubernetes 而設(shè)計(jì)的。除了其作為容器運(yùn)行時(shí)本身的作用以外,Docker 還包含了一系列方便用戶交互的 UX 更改,而這些額外的功能對(duì)于 Kubernetes 來(lái)說(shuō)過(guò)于臃腫。
事實(shí)上,Docker 并不符合 Kubernetes 的容器運(yùn)行時(shí)接口標(biāo)準(zhǔn)(CRI),官方必須要維護(hù)一個(gè)名為 Dockershim 的中間件才能夠把 Docker 當(dāng)作 Kubernetes 的容器運(yùn)行時(shí)來(lái)使用。因此,官方建議用戶使用符合 CRI 的 containerd 或 CRI-O 作為取代 Docker 的容器運(yùn)行時(shí),并表示最早將于 v1.23 版本把 Dockershim 從 Kubelet 中移除。
不過(guò),Kubernetes 官方表示用戶今后依然可以使用 Docker 來(lái)構(gòu)建容器鏡像,而 Docker 生成的鏡像實(shí)際上也是一個(gè) OCI(Open Container Initiative)鏡像。無(wú)論使用什么工具來(lái)構(gòu)建鏡像,任何符合 OCI 標(biāo)準(zhǔn)的鏡像在 Kubernetes 看來(lái)都是一樣的。containerd 和 CRI-O 則可以提取這些鏡像并運(yùn)行它們。
業(yè)內(nèi)人士認(rèn)為,自從 Docker 在容器編排引擎之爭(zhēng)中敗給 Kubernetes 后,這樣的結(jié)局或許早已注定。
官方聲明地址:https://kubernetes.io/blog/2020/12/02/dont-panic-kubernetes-and-docker/
本文轉(zhuǎn)自O(shè)SCHINA。
本文標(biāo)題:Kubernetes 將棄用 Docker
本文地址:https://www.oschina.net/news/122387/k8s-will-abandon-docker