K8s弃用Docker:背后的原因及替代方案解析

创始人
2025-01-28 17:16:00
0 次浏览
0 评论

K8s 为什么要弃用 Docker?

在调查K8的废弃Docker主题时,有必要首先回到K8的早期发展。
2014年,K8S刚出生,Docker处于鼎盛时期。
K8S开发人员认识到Docker的潜力,并将其作为此选项操作。
但是,随着K8的生长和CNCF的增加,野心逐渐超过了单个容器。
在2016年版1.5版中,K8S引入了CRI(集装箱运行时间界面),并与Docker进行了明显的官方分离。
CRI提供了一个分开码头机的功能,以便K8可以支持其他容器技术,例如RKT和KATA。
尽管Docker在市场上产生了强烈的影响,但K8S仍达到了1.24版中“丢弃Docker”的目标。
这种转换的关键是引入CRI和SIM。
后来,Docker采用了一种重建策略,将其分为多个模块,而Contind诞生了。
作为CNCF监护项目,ContainRed根据CRI标准提供了K8S的更简洁,高效的容器管理方法。
与Docker相比,该性能测试提供了重大改进。
云制造商。
2020年,K8S正式宣布Kubelet被Docker支持放弃,并在未来版本中被完全删除。
这一决定引起了IT行业的振动。
但是,K8S仅放弃了Dockershim,并且下层可以正常作为开源图像和容器执行。
K8和Docker之间的分离对双方的影响有限。
K8S使得不可能直接调用Docker中的包含,并在两者之间共享镜像管理。
对于使用Kubectl管理K8的用户,此更改并没有太大效果,但是有必要适应新的工具标记以显示容器和镜子。
K8不再与Docker结合,但是Docker在云中仍然很重要。
作为容器技术的创始人,Docker的镜像格式被标准化,以保持K8S环境中的兼容性,而无需更改原始开发测试和CI/CD工艺(OCI规范)。
Docker不仅是运行时,而且还提供诸如镜像,分发和测试之类的综合服务,并且已经使用Dockerdesktop构建了K8S功能。
对于初学者来说,Docker已成为学习容器技术和云本机技术的最佳选择,并易于使用,易于使用,完美的工具链和友好的界面。
尽管与K8的绑定减少了,但Docker通过CRI-DOCKERD项目将Dockerenine适应CRI接口,因此K8S用户可以无缝移动,好像没有更改。
Docker的未来仍然充满活力。
用户基础已被广泛使用了多年,即使在K8分解后,Docker在容器开发领域也起着重要作用,并对开发人员发挥了有用的作用。

k8s弃用docker后如何部署项目

处置开发人员处置后,开发人员可以切换到另一个容器,例如CRI-O和CRI-O和容器等容器,例如CR-O和容器,例如CRI-O和CRI-O等容器以及CRI-O和容器,例如CRI-O和容器,例如CR-O和CRA-O和容器等容器。
它为项目分布提供了更灵活的选择。
除了CRI-O和容器之外,其他容器可以满足项目的要求。
但是,使用这些不同的容器技术可能会带来一些教学挑战。
对于想要尝试新容器的开发人员来说,CRI-O是一个不错的选择。
这是一个很好的匹配,与基于Libcontainer的Docker兼容。
CRI-O同时是现代Linux系统的重要功能。
另一个选择是操作轻质容器的容器。
容器不仅支持OCI容器图像,还可以管理容器的生命周期和资源。
由于RKT取决于CoreOS发明的AppConontontonTontontonTontonTontonTontonTontonTontonTontonTroundAaaver。
一个容器。
RKT的优势是更好的保护,以防止其安全性和有害攻击的透明度。
但是RKT生态生态系统在实际抑郁症中更小,更多。
您可能需要自定义工作。
最后,LXD是基于Linux的虚拟化和容器平台。
它只能打开容器,但创建完整的Linux虚拟机。
可以管理。
LXD的独特功能之一是其功能强大的网络活动,并支持复杂的网络组成。
在某些详细情况下,它非常有用。
根据特定要求和技术背景,任何其他替代选项。
需要各种选择的优点和缺点。
通过了解这种易变技术的特征和功能,您可以教授更有效的解决方案,以了解该项目的传播。

k8s启用docker后的使用

K8S1.24留下了一个码头,这有助于库布莱特的整合以适合其他容器解决方案。
对容器的基本依赖性优化了呼叫链和K8S性能的改善。
如果您需要继续使用K8中的Docker,则需要安装Cri-Docker适配器,但会导致性能下降。
替代方案包括Crictl,CTR和NERDCTL。
Crictl致力于调试群集K8,这对另一个容器无效。
CTR是一个具有工具的容器,不使用容器加速器。
NERDCTL是集装箱的子项目客户。
下载nerdctl,请访问github.com/containerd/nerdctl,以提供简化且完整的安装软件包。
NERDCTL不仅复制Docker功能,而且还识别懒惰功能,图像加密(IMGCRYPT)。
集装箱使用Stargzsnapshotter延迟有吸引力并根据要求获取镜像文件。
使用NERDCTL启动容器服务时,服务器会生成虚拟网卡。
容器防火墙规则高于服务器设置。
您可以使用Docker主机网络模式(-NET =主机),但不支持最终的口映射。
步骤-NERDCTL安装步骤如下:下载,Deckompress软件包包,镜像标签和推送镜像,安装BuildKit以支持构建图像。
buildKit可在github.com/moby/buildkit上找到,并下载系统启动-up文件配置。
BuildKit需要两个配置文件:/USR/LIB/SYSTEMD/SYSTEMS/BUILDKIT.SOCTEDS和/USR/LIB/SYSTEMD/SYSTEMD/SYSTEM/BUILDKIT.SEVICE。
安装后,请确保当未确定提名(-n)时,Crictl和Cublet无法识别NERDCTL。
镜像建设性参数包括:-t确定镜像的名称,。
此过程的重点是配置启动文件,进行重负载启动测试并了解构造的主要参数。
文章标签:
K8s CRI
热门文章
1
OpenWrt Docker环境下部署多... n1刷openwrt上面的DOCKER有什么用独立的程序和结构。Docker将应...

2
Redisson分布式锁深度解析:Red... Redis实现分布式锁+Redisson源码解析在某些场景下,多个进程需要以互斥...

3
Java程序员简历IT技能描述指南:精准... Java程序员简历IT技能怎么写Java程序员简历中的技能描述应该具体、有针对性...

4
Redis分布式锁事故复盘:揭秘超卖背后... 一次由Redis分布式锁造成的重大事故,避免以后踩坑!使用基于Redis的分布式...

5
深度解析Docker:容器技术提升应用部... docker是什么Docker是一种强大的开源容器技术,它将应用程序及其所有依赖...

6
UOSLinux/统信系统Docker容... Linux/统信UOS系统上面设置docker容器开机自启动当服...

7
构建个人在线图书馆:简单书库管理与Doc... 搭建个人图书馆!一个简单的在线个人书库构建一个简单的在线图书馆,您可以使用在线个...

8
Python奇偶数判断与求和:代码实现及... python判断奇偶数代码该方法如下:编写函数ISODD(x)。 如果X不是整数...

9
Python轻松计算BMI:一键掌握体重... 怎样用python计算bmiPython中BMI(体重指数)的计算是一项简单而直...

10
解决Docker容器删除难题:专业清理与... dockerkill不掉Docker的解决方案无法删除容器。容器文件专业实际上是...