原文作者:Jeff Hale

原文地址:https://towardsdatascience.co...

翻译:付新圆

在本系列的第1局部《Docker-第1局部:什么是Docker?》咱们探讨了Docker容器的概念以及Docker容器的重要性,文章的最初咱们把Docker类比成了一个披萨,并把它拆解开来解释Docker容器的构造和用处。在本文中,将分享Docker生态系统中的罕用的术语。

遵循本系列第一篇文章中的食品主题,这里咱们将甜甜圈设想成一个Docker容器。

Docker生态系统术语

为了不便大家了解,我将Docker术语分为两类:根底术语和进阶术语。

Docker 根底术语

1.Docker平台

Docker平台是 Docker的软件,可在任何Linux服务器上的容器中打包和运行应用程序。Docker平台捆绑了代码文件和依赖项,反对可移动性和可重复性来促成平台扩大。

2.Docker引擎

Docker引擎是客户端服务器应用程序。Docker公司将Docker引擎分为两种产品。

  • Docker Community Edition(CE)是收费的,并且次要基于开源工具。
  • Docker Enterprise 提供了附加的其余反对,治理和平安性能。

图:引擎让事件运行

3.Docker客户端

Docker客户端是许多Docker用户与Docker交互的次要形式。应用 Docker命令行界面(CLI)时,请在终端中输出以docker结尾的命令,而后Docker客户端应用Docker API将命令发送到Docker Daemon。

图:Docker文档中的图表

4.Docker Daemo

Docker Daemo是侦听Docker API申请的Docker服务器,治理映像、容器、网络和卷。

5.Docker卷

Docker卷是存储应用程序耗费和创立的持久数据的最佳形式。在本系列的第5局部中,咱们将对Docker卷进行更多的探讨。

图:卷

6.Docker 注册表

Docker注册表是存储Docker映像的近程地位,将图像推送到注册表并从注册表中提取图像,能够托管注册表或应用提供程序的注册表。例如,AWS和googlecloud都有注册。

7.Docker Hub

Docker Hub是Docker映像的最大注册表,也是默认注册表。您能够在Docker Hub上收费查找图片并存储图片。

图:轮毂和辐条

8.Docker 存储库

Docker 存储库是具备雷同名称和不同标签的Docker图像的汇合,该标签是图像标识符。

通常,一个存储库具备同一映像的不同版本。例如,Python 是Docker Hub上最风行的官网Docker映像存储库的名称。Python:3.7-slim 指的是Python存储库中带有3.7-slim标签的图像版本。您能够将存储库或单个映像推送到注册表。

Docker 进阶术语

接下来咱们看一下与扩大多个Docker容器无关的Docker术语,以下四个概念波及一次应用多个容器。

1.网络容器

网络容器能够将Docker容器连贯在一起,连贯的Docker容器能够位于同一主机或多个主机上。无关Docker网络的更多信息,请参阅这篇文章。

图:Docker网络

2.Docker Compose 

Docker Compose是一种工具,可让您更轻松地运行须要多个Docker容器的应用程序。Docker Compose容许您将命令挪动到docker-compose.yml文件中以供重用。Docker Compose命令行界面(cli)使与多容器应用程序的交互变得更加容易。Docker Compose随您的Docker装置一起收费提供。

3.Docker Swarm

Docker Swarm是用于协调容器部署的产品。Docker官网教程的第四局部介绍了Docker Swarm。

图:蜂群

4.Docker 服务

Docker服务是分布式应用程序的不同局部。

服务实际上只是“生产中的容器”。一个服务仅运行一个映像,但它规定了映像的运行形式—应该应用什么端口,应该运行多少个容器正本,这样服务就有了它须要的容量,等等。扩大服务会更改运行该软件的容器实例的数量,从而在流程中为服务调配更多的计算资源。

Docker服务容许您跨多个Docker Daemon扩大容器,并使Docker Swarms成为可能。

回顾

以下用一行文字总结以帮忙你理清这十几个术语。

根本

  • 平台—使Docker容器成为可能的软件
  • 引擎—客户端服务器应用程序(CE或Enterprise)
  • 客户端—解决Docker CLI,以便您能够与守护程序进行通信
  • Daemon—Docker服务器,治理要害内容
  • 卷—持久数据存储
  • 注册表—近程映像存储
  • Docker Hub—默认和最大的Docker 注册表
  • 存储库—Docker图像的汇合,例如Alpine

缩放比例

  • 网络—将容器连贯在一起
  • 撰写—节俭多容器应用程式的工夫
  • Swarm—协调容器部署
  • 服务—生产中的集装箱

因为咱们遵循食物的隐喻,所以咱们为引入了另一个相干术语:Kubernetes。

图:再加一层甜甜圈并洒上糖果

Kubernetes主动执行容器化应用程序的部署、扩大和治理。它是容器编排市场的赢家,代替Docker Swarm,应用Kubernetes来扩大具备多个Docker容器的我的项目。Kubernetes不是Docker的官网局部,它更像是Docker的BFF。

图:Kubernetes

当初您曾经理解了Docker的概念和罕用术语,那么我建议您尝试应用Docker。

应用Docker

Docker在Linux、Mac和Windows上本地运行。如果您应用的是Mac或Windows计算机,请在此处装置最新稳固版本的Docker Desktop 。作为处分,它附带Kubernetes。如果要在其余中央装置Docker,请转到此处查找所需的版本。

装置Docker之后,执行Docker教程的前两局部。

总结

以上就是对于Docker的十二个术语的相干内容。在本系列的下三个局部中,咱们将深入研究Dockerfile指令,请继续关注咱们。