Docker已死?听听他怎么说

2020年底,Kubernetes在当时最新的Changelog中宣布,自V1.20后将弃用Docker,一石激起千层浪。Docker镜像不能用了?Podman难道要取Docker而代之?

此后唱衰Docker的消息不绝于耳。《Istio实战指南》作者,ServiceMesher.com管理委员会核心成员马若飞老师,让他来谈谈,Docker现如今是什么情况?

为什么需要虚拟化技术

对于个人而言,虚拟机在个人演示,备份,隔离方面都有很重要的应用,小开依稀记得大学毕业做毕业设计要用到Siemens的WinCC与Step7,但Siemens的软件是不支持Windows10的。为了不重新做系统,小开用VMM虚拟了一个Windows7系统,顺利完成了毕业设计。

对于企业而已,虚拟化技术显得更为重要,它是一种资源管理技术,更是重新组织系统资源的一种手段,以JavaWeb应用为例,如果你想将代码部署到虚拟机上,需要经历三个步骤

-编译成war包

-在VM或云主机部署一个webserver,如Tomcat

-上传(scp)war包到VM

但这里就引申出一个问题,如果你在多个环境中部署多个应用,该怎么办?

这时,PaaS的出现解决了以上的问题,PaaS提供了一套完整的应用打包和分发机制和沙盒(容器)隔离应用。但是PaaS也有自己的问题

-需要为不同语言、不同框架、不同版本维护一个包

-本地能运行的应用(包),部署后不能运行,需要额外修改环境、配置

-应用一键部署,环境需要维护

眼看它起高楼,眼看它楼塌了

2013年前,Docker还是一个默默无闻的小公司,此时还是PaaS的天下,前面我们提到过PaaS平台最大的问题是环境维护成本过高,Docker击败PaaS的杀手锏是Docker镜像将应用与环境整体打包镜像到任何实例中,通过这种降维打击,Dcoker单方面宣布了Paas平台的结束。

Docker大红大紫后很快表现出来在商业化方面的野心。2014年,Docker发布容器编排工具Swarm,Docker不仅仅想做幕后英雄,它想构建自己的生态,Swarm此后成为经营Docker生态的抓手。

然而,Swarm的发布却得罪了Docker最大的贡献者CoreOS,2014年底CoreOS推出自己的RKT容器。

同年,现如今的业界霸主Kubernetes发布,得益于依托Google多年经验沉淀,Kubernetes凭借全新的设计理念,如声明式API等方式避免与Docker正面接触,逐渐蚕食Swarm市场份额。

前有劲敌追赶,但此时Docker在商业化方面却昏招迭出,针对Docker这个顶级的开源项目,Docker公司采取强势的商业策略,甚至出现了一言堂的情况。

为了对抗Docker强硬的政策,大批厂商纷纷倒戈。于此同时,云原生基金会(CNCF)成立,这加速了Kubernetes生态构建。此时,Kubernetes凭借开放民主的策略,已经成为容器领域炙手可热的应用。

时间来到2017年,Docker公司宣布Docker将内置Kubernetes,这意味着Docker已经臣服于Kubernetes。2020年9月,Docker宣布放弃更新Swarm。

同年年底,业界发生了一颗重磅炸弹,Kubernetes宣布放弃对Docker运行时的支持。这意味着,Kubernetes单方面宣布了对Docker商业战争的胜利,就如同当年Docker革了PaaS平台的命一样。

诚然,Docker目前依然是最流行的容器构建工具,用户人群非常庞大。但就如那句名言,老兵不死,只是逐渐凋零。

眼看它起高楼,眼看它宴宾客,眼看它楼塌了!

Docker底层技术

Docker底层引擎技术是一个典型的C/S架构的多组件应用,分为Server端dockerd和Client端CLI,中间层是RestAPI。如果我们分析Docker底层核心技术,可以发现借鉴了很多Linux/Unix的技术

-namespace

-cgroup

-rootfs/UnionFS

namespace做隔离,通过限制容器只能看到一部分的资源。cgroup主要功能是资源限制,通过对进程做资源限制,使进程只能使用一部分系统资源,比如CPU,磁盘,网络带宽等。而rootfs/UnionFS是基于Linux的联合文件系统。 简单来说,我们可以把容器看作一个由namespace和cgroup构成的运行时的隔离环境。

Docker常用命令

讲师介绍

马若飞,就职于某跨国互联网公司,负责核心业务系统的微服务架构、云原生应用的落地工作。AWSContainerHero,《Istio实战指南》作者,人民邮电出版社IT专业图书专家顾问。中国最大的服务网格社区ServiceMesher.com管理委员会核心成员,云原生社区VIP,Istio.iocontributor。研究方向为微服务、ServiceMesh、云原生技术。

(0)

相关推荐

  • 从后端架构演化史到云原生,一文解读云原生架构!

    前言 自 2013 年容器(虚拟)技术(Docker)成熟后,后端的架构方式进入快速迭代的阶段,出现了很多新兴概念: 微服务 k8s Serverless IaaS:基础设施服务,Infrastruc ...

  • 容器云平台网络架构设计及优化

    [作者]顾文俊,某互联网公司,金融行业架构师.2008年南京邮电大学电路与系统专业研究生毕业,12 年职业生涯主要从事IT基础设施.云计算.容器.大数据.AI.金融科技相关领域的解决方案工作. 1 K ...

  • 还不懂 Docker?一个故事安排的明明白白!

    多年前的一个夜晚,风雨大作,一个名叫Docker的年轻人来到Linux帝国拜见帝国的长老. "Linux长老,天下程序员苦于应用部署久矣,我要改变这一现状,希望长老你能帮帮我" 长 ...

  • 老公趴下!62图给你讲Docker

    前言 第一趴---Docker容器圈简介 Docker容器圈简介 第二趴---Docker基本操作 Docker基本操作 容器圈 容器这个新生事物,现在还可以说是新生事物吗?对于我们学生而言,我觉得没 ...

  • ERP 已死,“中台”已凉,“低代码”称王!

    业界有个说法,认为ERP经过了20多年的发展,理念已经不行了.跟不上时代了:而后起之秀"中台",经历了兴起.火爆.被唱衰等阶段,也已经凉凉了. 再加上,最近一年"低代码& ...

  • 曾经的全国最大电脑城已死, 是“自杀”还是“他杀”?

    自2018年北京中关村鼎好电子商城开始停止与商户续约后,这个曾经的全国最大电脑城就已经开始了自己的转型之路.在北京市政府的规划中,中关村最晚将在2020年底开始彻底转型为"创新创业一条街&q ...

  • Root已死?

    早期的安卓用户一定不会对"Root"这个词感到陌生,它和"解BL锁"."刷机"等一系列词汇一起,构成了当年安卓搞机党们的共同记忆. 只是,随 ...

  • 孙震:景区营销已死,旅游策划当立!

    [引导语:我认为大多数旅游景区缺失了一个很重要的岗位或者环节,那就是旅游景区策划. 正是因为策划的缺失,才导致众多景区千篇一面,缺乏活力,缺乏盈利能力和持续发展动力.只有解决了这个问题,旅游景区才能以 ...

  • 孟姜女哭长城:秦始皇被栽赃的典型案例,人已死千年,有冤无处诉

    中华文化源远流长,民间故事是中国古代文化的重要组成部分,经过历史长河的洗涤,有四则家喻户晓的故事,被誉为"古代民间四大爱情传说",他们分别是<织女牛郎><梁山伯与 ...

  • Flash已死,但这些古老的Flash游戏还在努力活着丨触乐

    "过去从来没有出现过Flash这样的技术,今后很可能也再不会有了." 今年1月,一位名叫QuackityHQ的主播号召直播间里的几十万名观众一起登录虚拟社区游戏<哈宝宾馆&g ...

  • 故乡虽在,村魂已死,有事烧香,没事烧纸

    七夕的时候回村里,从回家到离开,一路上没见到一个人,一条一条宽敞的大街早已没有了往日的繁华和热闹,不由得心里有点难受. 现在的农村早已不是当初的模样,日出而作,日落而息的规律荡然无存,人们追求攀比的心 ...

  • 农村已“死”,还有必要在老家留套房吗?

    十一回家,老家房子很多都关门闭户,不能说十室九空,也达到七八成空锁着.村里几乎见不到50岁以下的青年人了,到了集镇,才能看到生机气象.除了小学生.中学生,依然是满眼的中老年人,老房子,以及时代背景下的 ...

  • 这不是危言耸听:真正危机不是高不可攀的房价,而是已死的农村!

    种地能赚钱,谁不种呢.什么也涨价,就是种地不涨,谁干呢?种一年地还不够养活自己呢,更别说娶媳妇了. 一味的发展大城市,是为了让世界看,大把的钱都花在城市上,而忽视了农业发展.农村的青壮年大都进城打工, ...