关于kubernetes和docker版本的一些总结

前言

在开始细讲之前先总结一下:

1、使用v1.24及以后的版本,推荐使用符合CRI标准的容器运行时,如果非要使用docker作为容器运行时,可以通过安装cri-dockerd这个插件来支持。

2、kubernetes从v1.22版本开始移除docker的cgroup驱动程序的自动检测和匹配,也就是说如果你还要使用cgroup需要自己进行配置。

3、查看kubernetes兼容的docker版本可以通过kubernetes的变更日志查看kubernetes/CHANGELOG/README.md at master · kubernetes/kubernetes · GitHub

怎样选择kubernetes和docker版本

大家可以通过下面的链接去github上查看kubernetes的变更日志

kubernetes/CHANGELOG/README.md at master · kubernetes/kubernetes · GitHub

可以全局搜一下,有时候他会展示在Action required里面,有时候会展示在Changed里面。

从Action required中可以看到它推荐v1.9.1,但是v1.8.3和v1.10也是经过验证可用的。

从Changed中可以看到他从v20.10.12+不兼容变更为v20.10.17不兼容。

kubernetes针对docker的一些变更

1、kubernetes从v1.20版本开始将要弃用docker作为底层容器运行时。

2、kubernetes从v1.22版本开始移除docker的cgroup驱动程序的自动检测和匹配,也就是说如果你还要使用cgroup需要自己进行配置。也就是说从v1.22版本开始将默认使用cgroup v2。想要了解v1和v2有什么区别可以看看这篇文章cgroup V1和V2的原理和区别-阿里云开发者社区

3、kubernetes从v1.24版本开始移除dockershim,也就是从v1.24版本开始就不支持docker作为底层容器运行时,只能使用其他符合CRI标准的容器运行时,比如containerd、CRI-O。

为什么Kubernetes(K8S)弃用Docker:深度解析与未来展望-腾讯云开发者社区-腾讯云

4、但是为什么1.24版本以后的版本还会写支持那些docker版本或者有些博客虽然使用的是v1.24版本以后的kubernetes,但是还使用docker作为底层容器运行时,这是因为虽然kubernetes取消了内置dockershim,但是可以使用cri-dockerd这个插件来支持docker作为底层容器运行时。跟之前的区别就是从内置dockershim变为外置dockershim。

GitHub - Mirantis/cri-dockerd: dockerd as a compliant Container Runtime Interface for Kubernetes

docker版本号的变化

大家肯定好奇docker的版本号为什么从1.x->突然变成了17.x->,这是因为Docker Engine在2017年被分为Docker CE(社区版)和Docker EE(企业版),所以版本号进行了改编

Docker介绍和docker重大版本变更历史_docker版本-CSDN博客

相关推荐
敲上瘾6 小时前
Docker 容器核心指令与数据库容器化实践
linux·运维·服务器·docker·容器·eureka·dubbo
Linux运维技术栈6 小时前
Kubernetes 全景指南:从核心概念到云原生未来
云原生·容器·kubernetes
deeper_wind7 小时前
K8S-资源对象(小白的“升级打怪”成长之路)
容器·kubernetes
岚天start7 小时前
K8S容器POD内存快照导出分析处理方案
云原生·容器·kubernetes·内存·快照·pod·内存快照
周小码18 小时前
Go开发的自行托管代理加速服务:支持Docker与GitHub加速
docker·golang·github
川石课堂软件测试19 小时前
Oracle 数据库使用事务确保数据的安全
数据库·python·功能测试·docker·oracle·单元测试·prometheus
奋斗的老史19 小时前
25年Docker镜像无法下载的四种对策
docker·容器·eureka
chillxiaohan19 小时前
Docker学习记录
学习·docker·容器
柯南二号20 小时前
【后端】Docker 常用命令详解
服务器·nginx·docker·容器