为什么Docker如此受欢迎


如今,人们肯定听说过Docker容器,也会知道Docker很受欢迎。但是知道这是为什么吗?以下看看当今用户对于Docker有着极大兴趣的因素。

在深入讨论Docker受欢迎的因素之前,值得注意的是,Docker不是唯一的容器平台,也不是第一个推出的。

其他框架,如OpenVZ和LXC,从20世纪20年代中期诞生。而其他类似容器的技术,如FreeBSD更进一步。而Docker在2013年发布,与目前的大多数主流技术相比,是一个非常年轻的技术。

不过奇怪的是,Docker并不是一个比较成熟的容器平台,在过去几年中已经大大地凸显了这一点。这是一个值得思考的结果,为了了解什么使容器普遍如此受欢迎,以及为什么Docker是如此成功地替代容器框架,而很少采用。

解释Docker的流行度

所以,人们需要考虑这两个因素。

首先,这就是为什么容器在过去几年中一直被证明对各种规模的企业具有吸引力的原因:

容器的启动和停止速度比虚拟机快得多。

容器更易于移植,因为无论何种类型的操作系统托管它们,容器主机环境都是非常一致的。

容器应用程序易于扩展,因为容器可以从环境中快速添加或减少。

容器可以轻松将复杂的单片应用程序分解成更小的模块化微服务。

那么有一个问题,那就是为什么Docker变得如此受欢迎。这是一个很难回答的问题,但专家认为以下因素正在发挥:

Docker从一开始就是开源的。这有助于Docker在技术市场更有吸引力,到2013年,开始将开源视为软件生产的默认模式(如果Docker在五年前出现,当开放源码的商业兴趣不那么强烈时,开源并不会对Docker有所帮助。)

Docker出现在正确的时间。到2013年,虚拟机终于成为一种过时的技术。组织正在寻找一种更精简,更方便的部署应用程序,Docker恰好符合要求。当OpenVZ和LXC出现在20世纪20年代中期时,传统的虚拟化技术还没有完成,所以这些容器框架不太吸引人。

Docker与DevOps革命相吻合。DevOps在2010年流行起来,强调了软件交付中的敏捷性,灵活性和可扩展性。Docker容器恰好提供了一个很好的构建块,用于根据DevOps规定创建软件交付管道和部署应用程序。

Linux的比较

在许多方面,Docker的不可预测的成功反映了20世纪90年代Linux内核的成功。

正如专家所指出的那样,Linux作为一个默默无闻的软件项目进入了世界,这是一个芬兰学生运行的一个模糊的软件项目,没有资金或先进的设备。Linux最终成功地取得了巨大的成功,而像GNU和BSD这样的内核项目更为突出,更多的资金,但其专业化的内核项目受到限制。

Docker和LXC之类的替代品之间的区别可能不如Linux和GNU Hurd那样显著。尽管如此,Linux和Docker的崛起在相当短的时间内从默默无闻的项目到具有巨大商业价值的项目,这二者十分相似。

结论

专家认为时间可以解释为什么Docker容器变得如此受欢迎。Docker容器解决了过去五年来许多组织寻求解决的软件交付和部署问题。虽然早期的容器框架提供了类似的解决方案,但人们对它们的兴趣有限,因为他们解决的问题在首次亮相时,当时人们的需求并不紧迫。

一般来说,专家认为与Docker的时间相比,Linux的成功与否更为关键。Linux的成功很大程度上是由于其他内核项目(尤其是GNU)的混乱,因为Linux早期采用了创新的,分散的开发策略。但是时运肯定帮助Linux获得了成功,就像Docker一样。


本文作者:Harris编译

来源:51CTO

优秀的个人博客,低调大师

微信关注我们

原文链接:https://yq.aliyun.com/articles/178955

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

相关文章

发表评论

资源下载

更多资源
优质分享Android(本站安卓app)

优质分享Android(本站安卓app)

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

Eclipse(集成开发环境)

Eclipse(集成开发环境)

Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。

Java Development Kit(Java开发工具)

Java Development Kit(Java开发工具)

JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。

Sublime Text 一个代码编辑器

Sublime Text 一个代码编辑器

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。