【编者的话】Docker不再是唯一的容器运行时,与Docker所能提供的相比,即将出现的其他容器运行时将更快、更安全、更智能、功能更丰富(其中一些已经如此)。Docker,再见!感谢Docker!感谢所有在容器技术上做出付出与贡献的可爱的人们!
早在2018年7月,我就开始写一篇关于Docker作为公司即将消亡的博客文章(也可能是作为一种技术消亡),但我从来没有抽出时间来完成和发表这篇文章。是时候把那篇文章拿出来了。
当然Docker还在这里,每个人都还在使用Docker,并且在不久的将来还会继续这样做(可预见的将来会有多远——还有待确定)。我之所以选择这个标题作为博客文章的标题,是因为在我看来,Docker作为一家公司的日子已经***了,或许它作为技术也是这样。请允许我占用你几分钟的时间,我将与你分享我的想法的基础。
几年前,Docker是一家改变世界的公司,我们可以肯定地说,今天仍然在改变世界。容器和容器背后的技术已经存在多年,远在Docker这个词还没被想到,甚至变成了一个动词(“容器化”所有的应用)之前就已经存在了,但Docker是鼓励大众消费技术的公司。容器,以一种简单容易且时尚的方式存在着。大多数技术公司(或者至少是那些认为自己是现代技术公司的公司)将使用Docker或容器作为其产品或管道的一部分,因为它非常有意义,并为整个流程带来了如此多的好处。
在过去的12-24个月里,人们逐渐意识到Docker已经走完了自己的路,作为一种技术,他们将无法为今天的产品提供额外的价值,并决定从其他地方寻找额外的优势。
Kubernetes赢得了容器编排之战,我想没有人否认这一事实。Docker本身也采用了Kubernetes。总会有一些利基玩家(niche players)拥有特定的Docker Swarm、Mesos、Marathon和Nomad的用例,但事实上的标准是Kubernetes。所有3家大型云服务提供商现在都有一个托管的Kubernetes解决方案,可以提供给他们的客户(最终将会淘汰他们自己多年来开发的自制解决方案,因为只能有一个)。每家云服务提供商都在建设更多的服务,提供更多的解决方案,以吸引更多的客户,增加他们的收入。
故事到这里就结束了,这没什么好看的。接下来是闪亮的东西。
目前,Kubernetes使用Docker作为底层容器引擎。我认为Kubernetes社区理解Docker作为一个容器运行时(我特别使用这个术语)是尽快推出产品的最终解决方案。他们也很早就(明智地)认识到,他们需要有一个选择,那就是切换出容器运行时的选项,并最终允许Kubernetes的消费者做出选择。
开放容器计划带来了运行时规范,它打开了一扇门,让我们所有人都可以使用Docker以外的其他东西作为运行时。而且它们还在稳步增长。Docker不再是唯一使用的运行时。他们正在社区中成长,社区正在慢慢地分享如何使用Docker之外的其他东西的知识。Kelsey Hightower——从CRI-O到containerd再到gVisor,多年来一直在努力更新他的Kubernetes(坦白说,这是一项了不起的工作)。社区里所有的酷孩子都不再使用Docker作为底层运行时。现在有许多其他的选择,比如clearcontainers、katacontainers,并且这个列表还在不断地增长。
大多数人(包括我自己)都不具备足够的知识和专业技能,不知道如何将运行时切换到他们想要的运行时,通常只是使用默认的开箱即用的运行时。当人们明白他们可以很容易地选择更换容器运行时,并且知识是现成的、容易获得的,我认为我们没有任何理由再使用Docker,因此Docker作为一种技术和一家公司会慢慢消失。与Docker所能提供的相比,即将出现的其他容器运行时将更快、更安全、更智能、功能更丰富(其中一些已经如此)。如果你有一个更好、更智能、更安全的产品——为什么人们会继续使用不再适合他们日益增长的需求的技术呢?
对Docker来说,为了避免这种结果,我建议投入尽可能多的精力,为任何工作负载创建***的运行时,这样Docker仍然是每个人使用的事实上的标准。这里有个问题是,容器运行时没有钱,Docker从来没有在运行时赚钱,他们在容器运行时之上和之上的企业特性中寻找收入。他们将如何解决这个问题,超出了我以及这篇文章的范围。
Docker社区群体一直在稳步下降,受欢迎程度一直在下降,新特性和公告的数量也在下降,而且在过去一两年中一直在下降。
前段时间有人告诉我,说坏话或者告诉别人坏消息通常很容易。我们可以很容易地说这是错的,这没有用,这应该改变。但是如果没有提供一个积极的转折,你就会变成一个悲观的人。“死神”,别做那样的人。
我想听听他们的建议,并在此基础上补充一点,这对你今天意味着什么。你应该开始投资于理解这些其他运行时如何帮助你,在它们合适的地方,增加你的知识和专业技能,这样你就可以做好准备,当其他人停止使用Docker时,你会发现自己不得不匆忙地调整所有的基础设施。我认为这是不可避免的。
以上就是我8个月前想写的帖子……
促使我今天完成这篇文章的是Scott Mccarty的一篇文章——关于即将到来的RHEL 8 beta版——Enterprise Linux 8 beta版:一套新的容器工具——以及我随后发布的Twitter:
瞧吧,RHEL 8不再有Docker可用了。
如果你是一个容器老手,你可能已经养成了通过安装Docker包来定制系统的习惯。在你全新的RHEL 8 Beta系统中,你可能要做的***件事就是去找你的老朋友yum。你将尝试安装Docker包,但是没有成功。如果你很聪明,接下来,你会搜索并找到这个包:
这个Podman是什么?Docker包被容器工具模块替换,该模块由Podman、Buildah、Skopeo和其他几个小部件组成。
译者:Mr.lzc,软件工程师、DevOpsDays深圳核心组织者,目前供职于华为,从事云存储工作,以Cloud Native方式构建云文件系统服务,专注于Kubernetes、容器、微服务领域。
网页名称:再见Docker!感谢所有人!
网页路径:http://www.shufengxianlan.com/qtweb/news5/458855.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联