k8s弃用docker后使用ctr导入镜像

时间:2024-02-15 22:38:51

很多公司的k8s安装比较早,在生产环境一般很少升级,因此还是老版本,在使用新版本的时候,容易陷入老版本的思维中,从而掉坑,这里记录一下整个排查过程,希望对遇到类似的同学起到一定的帮助。

k8s 抛弃弃用docker

学习容器技术的过程中,我看到有不少同学留言问 Kubernetes“弃用 Docker”的事情,担心现在学 Docker 是否还有价值,是否现在就应该切换到 containerd 或者是其他 runtime。

这些疑虑的确是有些道理。两年前,Kubernetes 放出消息要“弃用 Docker”的时候,确确实实在 Kubernetes 社区里掀起了一场“轩然大波”,影响甚至波及到社区之外,也导致 Kubernetes 不得不写了好几篇博客来反复解释这么做的原因。

两年过去了,虽然最新的 Kubernetes 1.24 已经达成了“弃用”的目标,但很多人对这件事似乎还是没有非常清晰的认识,所以今天我们就来聊聊这个话题,我也讲讲我的一些看法。

什么是 CRI?

要了解 Kubernetes 为什么要“弃用 Docker”,还得追根溯源,回头去看 Kubernetes 的发展历史。

2014 年,Docker 正如日中天,在容器领域没有任何对手,而这时 Kubernetes 才刚刚诞生,虽然背后有 Google 和 Borg 的支持,但还是比较弱小的。所以,Kubernetes 很自然就选择了在 Docker 上运行,毕竟“背靠大树好乘凉”,同时也能趁机“养精蓄锐”逐步发展壮大自己。

时间一转眼到了 2016 年,CNCF 已经成立一年了&#x