需要指出的是,Docker 已经帮助革新了软件开发流程。使用诸如 cgroups、命名空间、进程隔离等 Linux 原语(primitives)加入到单个工具中是一个了不起的亮点。在 2012 年,我试图弄清楚开发环境如何更加可移植。Docker 的崛起使得开发环境成为一个简单的、可版本控制的 Dockerfile 。工具从 Packer、Vagrant、VirtualBox 和大量的基础设施中转移到了 Docker 上。Docker UI 实际上也相当不错!这是许多应用程序的好工具。Docker 团队的成员应该为他们所构建的工具感到自豪。
Docker 早期的成功导致该公司围绕其产品建立一个大型社区。早期的成功一次次推动了资金轮动。像高盛、Greylock Partners、红杉资本和 Insight Venture Partners 这样的知名投资者排起了长队,为 Docker 提供了大量的资金。到目前为止,Docker 已经筹集了总额在 2.42 -2.5亿 美元的资本投资。
但是,像大多数资金充裕的、不惜一切代价出头的 2010 年创业公司一样,Docker 造成了一些人力资源上的失误。Docker 在成长的过程中保护了一些蹩脚的人。这导致我个人不喜欢该公司的领导。其产品仍然是有质量的,但不能原谅该公司的行为。可悲的是,很多硅谷宠儿都是这样的,这需要改变。
由于 Kubernetes 的兴起,Docker 的厄运加速了。Docker 在对这个开源社区的容器编排工具宠儿 Kubernetes 处理上表现的没有好感。在 Docker 的心中,Docker Swarm 才是唯一的容器编排工具。尽管这是因为 Kubernetes 控诉 Docker 容器(缺乏开放性)在先。Docker Captains 坚决反对 Kubernetes 2017年初在各种文章中、聚会和会议中的讨论。
在 Austin 的 DockerCon17 上,出现了 Kubernetes-less 的口号。然后,相当突然的,在 DockerCon EU 17 上,Docker 决定全面拥抱 Kubernetes 。突然的变化显然是 Docker 承认了 Kubernetes 的崛起和其即将到来的统治地位。Docker 赞助其 KubeCon + CloudNativeCon North America 2017 活动并在现场摆放展台的行为也加剧了这一事实。
没人懂得 Docker 在4月份的 DockerCon17 上发布 Moby 时究竟在做什么。Moby 被描述为 Docker 项目的新的上游。但 Moby 的推出并没有提前放出消息。就如 Solomon Hykes 在 DockerCon17 上发言的那样,当直接将 Github 上原隶属于 Docker 组织的 Docker 项目,直接转换到了一个新的、名叫 Moby 的组织下时,引起了数百万的争议爆发。这种极端的、糟糕的做法甚至引来了 Github 员工的直接干预。
这次的改变不仅管理得不好,而且信息也没有得到很好的考量。随后导致了致歉,并手绘阐释了这一变化。这也进一步混淆了已经混浊的容器空间和 Docker(或者是 Moby?)的生态系统。Moby 部署的处理继续困扰着业内的从业人员。Docker 品牌可能因此受损。
在最后的时刻,Docker 仍然迟迟不能拥抱 Kubernetes ,这是一个即将崩溃的迹象。当被问及 Docker Swarm 是否已经死亡时,Solomon Hykes 在推特上说:“Docker 将继续按照一等公民的级别支持 Kubernetes 和 Swarm ,并鼓励异花授粉(cross-pollination)。开放性和选择性为每个人创造了一个更健康的生态系统”。这里真正的问题是 Docker Swarm 并没有完全完工,而且距离完工还早得很。Docker Swarm 产品团队及其少数开源贡献者将无法跟上 Kubernetes 社区的步伐。不仅和 Docker UI 一样好,Kubernetes 的 UI 甚至还要优越得多。这就和让 Docker 承认自己在容器领域成为一家边缘咨询公司差不多。
我在 Twitter 上提出了一个关于 Docker 在 2017 年的尴尬时刻的猜测。可能 Docker 知道公司本身即将终结,所以才有了后面的一些技术变化:将 containerd 捐赠给 CNCF ,使 Moby 成为 Docker 的上游,并且拥抱 Kubernetes ,这将使 Docker 人所做的出色工作永垂不朽。这也使得像甲骨文或微软这样的大型组织能够一起来收购这家公司,而不必担心错失由于许可证被锁定而带来的技术进步。这为软件团队和公司本身提供了两全其美的方法。不管怎么说,2018 年对于 Docker 来说将是一个有趣的一年。
评论删除后,数据将无法恢复
评论(53)
引用来自“滔哥”的评论
😳引用来自“达尔文”的评论
😳引用来自“-_-zz”的评论
😳引用来自“Soi”的评论
😳引用来自“幻幻Fate”的评论
😳引用来自“clouddyy”的评论
😳引用来自“ylywyn”的评论
😳引用来自“ZJC”的评论
😳引用来自“花花兽”的评论
😳引用来自“adoontheway”的评论
😳引用来自“Soldier93”的评论
😳引用来自“滔哥”的评论
😳引用来自“达尔文”的评论
😳引用来自“-_-zz”的评论
😳引用来自“Soi”的评论
😳引用来自“幻幻Fate”的评论
😳引用来自“clouddyy”的评论
😳引用来自“ylywyn”的评论
😳引用来自“ZJC”的评论
😳引用来自“花花兽”的评论
😳引用来自“adoontheway”的评论
😳扩展服务器只需要服务器加入Docker Swarm集群中项目就能自动部署运行。
引用来自“滔哥”的评论
😳引用来自“达尔文”的评论
😳引用来自“-_-zz”的评论
😳引用来自“Soi”的评论
😳引用来自“幻幻Fate”的评论
😳引用来自“clouddyy”的评论
😳引用来自“ylywyn”的评论
😳引用来自“ZJC”的评论
😳引用来自“花花兽”的评论
😳引用来自“adoontheway”的评论
😳引用来自“阿信sxq”的评论
😳引用来自“rockingMan”的评论
😳引用来自“紫电清霜”的评论
😳引用来自“滔哥”的评论
😳引用来自“达尔文”的评论
😳引用来自“-_-zz”的评论
😳引用来自“Soi”的评论
😳引用来自“幻幻Fate”的评论
😳引用来自“clouddyy”的评论
😳引用来自“ylywyn”的评论
😳引用来自“zyuyou”的评论
😳引用来自“滔哥”的评论
😳引用来自“达尔文”的评论
😳引用来自“-_-zz”的评论
😳引用来自“Soi”的评论
😳引用来自“幻幻Fate”的评论
😳引用来自“clouddyy”的评论
😳引用来自“ylywyn”的评论
😳引用来自“ZJC”的评论
😳引用来自“花花兽”的评论
😳引用来自“adoontheway”的评论
😳引用来自“zoemak”的评论
docker一直作为我自己开发环境本地化的工具,在2017年崩溃了N次(公司和家里),于是也打消了我想在生产环境使用的念头。我用的是windows版docker不知道linux的情况怎样?
引用来自“QiHaiYan”的评论
windows版的docker有2中虚拟化方式,一种是用windows自己的hyperv,一种是用virtualbox,不知你选的是哪一种?docker本来是基于linux的资源隔离技术,在windows上用的时候是跑在linux虚拟机上的。引用来自“滔哥”的评论
😳引用来自“达尔文”的评论
😳引用来自“-_-zz”的评论
😳引用来自“Soi”的评论
😳引用来自“幻幻Fate”的评论
😳引用来自“clouddyy”的评论
😳引用来自“ylywyn”的评论
😳引用来自“ZJC”的评论
😳引用来自“花花兽”的评论
😳引用来自“adoontheway”的评论
😳引用来自“彭添”的评论
😳引用来自“滔哥”的评论
😳引用来自“达尔文”的评论
😳引用来自“-_-zz”的评论
😳引用来自“Soi”的评论
😳引用来自“幻幻Fate”的评论
😳引用来自“clouddyy”的评论
😳引用来自“ylywyn”的评论
😳引用来自“ZJC”的评论
😳引用来自“花花兽”的评论
😳引用来自“adoontheway”的评论
😳