时间:2019-08-01
编辑:网站制作公司
908
0
从分析师到应用程序开发人员,如果您从事软件和Web应用程序开发,您很可能听说过Docker。如果没有,你应该熟悉它,因为它最近获得了很大的动力。因此,它迫使谷歌,亚马逊和VMWare等巨头在其托管服务产品中建立对它的支持。那Docker是什么?从根本上说,它是一种在“容器”内运行应用程序的工具,并提供打包这些容器的能力,以便使应用程序的共享和/或运输更加简化,简单和高效。广州响应式网站
当人们被告知上面给出的定义时,他们经常将Docker与虚拟机进行比较 - 这是正确的。从广义上讲,肯定有相似之处。但是,有一些基本的差异可以解释Docker带来的真正价值。虚拟机本质上是一个功能齐全的计算机的模拟,完整的操作系统和所有。但是,容器将共享部署它们的主机的操作系统内核。它们的包主要由不同的库和它们运行的应用程序的内容组成。所有无关项目都被省略,并且仅包括对容器应该运行的软件必不可少的项目。
那么为什么Docker成为容器化应用程序的普遍选择呢?这有几个原因,有些主观。以下是我们认为最近开源社区普遍情绪的一些原因。
开发人员有时不具备系统管理员或开发人员可能具有的知识或熟悉程度。这导致他们回避处理部署或与服务器有关的任何事情。Docker已经开始改变这种思路。您是否是应用程序开发人员或管理员,创建一个Docker容器并将其打包以在其他地方使用/部署就像使用人们熟悉的npm,pip,composer或其他包管理器一样简单。Docker坚定地遵循“一次构建,随处运行”的口号,并且显示出来。他们需要做的就是创建一个Docker文件(可以将其视为类似于composer.json的清单文件),该文件将包含一组指令。这些将让Docker知道哪个包/库需要可供这个容器运行(例如php,apache,mysql等)以及所需的任何配置相关项。Docker将完成其余的工作。
正如我们之前讨论的,Docker非常轻量级(与虚拟机相比)。这样可以轻松地跨不同的团队,服务器和环境共享容器和包。与启动虚拟机并对其进行配置所花费的时间相比,Docker容器可以在几秒钟内打包和部署,更不用说在创建虚拟机的新实例时所做的返工量。需要。使用Docker,您可以根据需要自动执行整个过程并按需重复。
Docker最大的好处之一是它能够轻松扩展应用程序。Docker背后的基本概念是每个容器应该专注于一个进程。这意味着您可以构建一个Docker文件,该文件定义了几个不同的容器,需要在这些容器中运行的代码,以及相应容器需要哪些库,包或依赖项。它还允许您通过API密钥与您的托管服务提供商集成,以便在需求出现时动态启动和减少容器,确保随着需求的增加,基础架构可以自动扩展而不会陷入困境。同样,随着需求的减少,可以减少不必要的容器以避免额外的服务器成本。
在某些方面,Docker Hub可以被认为是Docker的“App Store”。它是一个有组织的策划列表,包含库,包和/或依赖项,您可以在Dockerfiles中使用它们来定义容器所需的元素。评级,统计数据和明星可以帮助您确定哪些软件包是开源社区中最受欢迎的软件包,以及清晰的标记,让您知道哪些软件包是正式的,哪些是社区支持的软件包是一个非常好的功能。总而言之,这种类型的组织在将新人加入Docker时有很大帮助。广州响应式网站
虽然这几乎没有涉及Docker及其优势的表面,以及为什么我们Cygnis Media完全接受Docker的所有内容,我们希望它提供了一个很好的起点。还有更多内容要做,例如Docker与Kubernetes的配对,这本身就可以在部署自动化和可扩展性领域打开一个全新的可能性世界。我们希望将来能够涵盖这些主题。然而,与此同时,我们强烈建议尝试Docker并密切关注它的发展,因为它们正在变得越来越快。
广州响应式网站
3
s后返回登录3
s后返回登录