第 1 章 导言 导言
本作品已使用人工智能进行翻译。欢迎您提供反馈和意见:translation-feedback@oreilly.com
2013年3月15日,在加利福尼亚州圣克拉拉举行的Python开发者大会上,当时名为dotCloud的公司创始人兼首席执行官所罗门-海克斯(Solomon Hykes)在一次5分钟的闪电演讲中,首次向 界介绍了Docker--没有事先宣布,也没有大张旗鼓地宣传。在宣布这一消息时,除了 dotCloud 之外,只有约 40 人有机会使用 Docker。
消息发布后的几周内,媒体报道数量惊人。源代码很快在GitHub上发布,成为一个完全开源的公开项目。在接下来的几个月里,越来越多的业内人士开始听说 Docker,以及它将如何彻底改变软件的构建、交付和运行方式。而在一年之内,业内几乎没有人不知道 Docker,但很多人仍然不清楚它到底是什么,为什么人们会对它如此兴奋。
Docker 是一种工具,有望轻松封装为任何应用程序创建可分发工件的过程,将其大规模部署到任何环境中,并简化 Agile 软件组织的工作流程和响应速度。
Docker 的承诺
最初,许多不熟悉 Docker 的人将其视为某种虚拟化平台,但实际上,它是第一个广泛使用的工具,建立在一种更新颖的技术--容器化--之上。Docker 和 Linux 容器对包括 Vagrant、KVM、OpenStack、Mesos、Capistrano、Ansible、Chef、Puppet 等工具和技术在内的众多细分行业产生了重大影响。在这份受 Docker 直接影响市场份额的产品清单中,有一些很能说明问题的东西,也许你已经发现了。翻看这份清单,大多数工程师都会发现,这些工具跨越了许多不同的用例,但所有这些工作流程都被 Docker 永远地改变了。这主要是因为 Docker 极大地改变了每个人对持续集成和持续交付(CI/CD)工作流程的预期。大多数人不再希望每一步都涉及由专家管理的耗时流程,而是希望 DevOps 管道能够完全自动化,从一个步骤流向下一个步骤,而无需任何人工干预。该列表中的技术也因其提高生产率的能力而受到普遍赞誉,而这正是 Docker 引发热议的原因。Docker 恰好处于过去十年中一些最有利的技术中间,几乎可以为管道的每一步都带来重大改进。
如果要对 Docker 和这些单个领域(如配置管理)的卫冕冠军进行逐一功能比较,Docker 很可能只是一个中等水平的竞争对手。它在某些领域比其他领域更强,但 Docker 带来的是一个跨越广泛工作流程挑战的功能集。Docker 将 Vagrant 和 Capistrano 等应用程序测试和部署工具的易用性与虚拟化系统管理的易用性结合起来,然后提供接口,使工作流自动化和协调易于实现,从而提供了一个非常有利的功能集。
许多新技术来来去去,对最新流行的技术持怀疑态度总是健康的。当 Docker 还是一项新技术时,人们很容易将 Docker 视作另一种技术,认为它只是为开发人员或运营团队解决了一些非常具体的问题。如果仅仅把 Docker 看作一种伪虚拟化或部署技术,它可能看起来并不十分引人注目。但 Docker 远不止表面看起来那么简单。
即使在规模较小的组织中,要正确处理团队之间的沟通和流程也很困难,而且往往成本高昂。然而,在我们生活的这个世界里,团队之间越来越需要沟通详细信息才能取得成功。发现并实施一种工具,既能降低沟通的复杂性,又能帮助开发出更强大的软件,这无疑是一个巨大的成功。这正是 Docker 值得深入研究的原因。Docker ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access