学习Docker,第2部分:术语和概念

在Docker系列翻译的第一部分中 ,我们对该系统进行了概述。 特别是,我们讨论了为什么容器化技术在当今很重要,关于什么是Docker容器以及它们可以与之进行比较。 今天,我们将讨论Docker生态系统,并探讨在学习和使用Docker时可能遇到的重要术语。 继续用不同的东西进行类比,想象一下我们的术语是甜甜圈。 一打甜甜圈。

第1部分:基础知识
第2部分:术语和概念
第3部分:Dockerfile文件
第4部分:缩小图像尺寸并加快其组装速度
第5部分:团队
第6部分:处理数据




Docker生态系统条款


我将您在使用Docker时可能遇到的术语分为两部分。 我认为这将使他们更容易记住。 第一部分术语将涉及Docker机制。 第二个是扩大基于容器的解决方案。

Docker机制


▍Docker平台



码头工人

Docker平台( Docker Platform )是一个程序,使我们能够将应用程序打包到容器中并在服务器上运行它们。 Docker平台允许您将代码及其依赖项放入容器中。 结果,基于容器的系统易于扩展,因为可以运输和使用容器。

▍Docker引擎



引擎

Docker 引擎Docker Engine )是一个客户端-服务器应用程序。 Docker将Docker引擎分为两种产品。 Docker Community Edition (CE)是一个主要基于开源工具的免费软件。

您可能会使用此特定版本的Docker。 Docker Enterprise是系统的付费版本,可为用户提供系统支持,管理和安全性方面的附加功能。 付费版本的Docker为公司提供了生存所需的手段。

客户Docker



Docker客户端和其他生态系统机制(摘自文档

Docker Client是用于与Docker交互的主要工具。 因此,在使用Docker命令行界面 (CLI)时, 会将命令输入到以docker关键字开头的终端(指的是客户端)。 然后,客户端使用Docker API将命令发送到Docker守护程序。

▍Docker恶魔


Docker守护程序( Docker Daemon )是一个Docker服务器,用于侦听对Docker API的请求。 Docker守护程序管理映像,容器,网络和卷。

omaToma码头工人



托玛

Docker Volumes是永久存储应用程序消耗或产生的数据的首选机制。

▍Docker注册表


Docker Registry( Docker Registry )是一个用于存储Docker映像的远程平台。 使用Docker时,图像会发送到注册表并从中下载。 使用Docker的人员可以组织类似的注册表。 此外,云服务提供商可以维护自己的注册表。 例如,这适用于AWSGoogle Cloud

▍DockerHub


Docker Hub是最大的Docker映像注册表。 另外,默认情况下使用Docker时使用的是此注册表。 您可以免费使用Docker Hub。

▍Docker存储库


Docker 存储库是共享相同名称和标签的Docker映像的集合。 标签是图像的标识符。

通常,存储库存储同一映像的不同版本。 例如, Python是Docker Hub上最受欢迎的官方Docker存储库的名称。 这是Python:3.7-slim是Python存储库中带有3.7-slim标签的映像版本。 您可以将整个存储库或单独的映像发送到注册表。

现在让我们谈谈与扩展相关的Docker生态系统的术语。

扩展基于容器的解决方案


以下四个术语是指同时使用多个容器。

▍Docker网络



Docker网络(摘自文档

Docker NetworkingDocker Networking )机制允许容器Docker之间进行通信。 网络连接的容器可以在同一主机或不同主机上运行。 可以在此处找到有关Docker网络子系统的详细信息。

▍Docker撰写


Docker Compose是一种工具,可简化需要多个Docker容器才能运行的应用程序的部署。 Docker Compose允许您执行docker-compose.yml描述的命令。 这些命令可以根据需要执行多次。 Docker Compose命令行界面可轻松与多容器应用程序进行交互。 安装Docker时会安装此工具。

▍DockerSwarm



一群蜜蜂

Docker Swarm是一种用于管理容器部署(即他们所说的用于协调容器)的解决方案。 在此Docker官方教程中了解Docker Swarm。 如果您没有充分的理由,我建议您不要浪费时间探索Docker Swarm。

▍Docker服务


Docker服务是分布式应用程序的各个部分。 这是文档中关于它们的内容:

服务只是“生产中的容器”。 服务中仅执行一个图像,但是服务确定如何执行该图像。 特别是,我们正在讨论应该使用哪些端口,必须执行多少个容器副本才能使服务提供必要的计算能力,等等​​。 服务的扩展涉及更改运行某个程序的容器的实例数,因此为服务分配了解决特定问题所需的系统资源。

Docker服务使您可以在多个Docker守护程序中扩展容器,并且还存在Docker Swarm技术。

简短词汇表


简而言之,让我们重复刚才提供给您的条款:

Docker机制:

  1. Docker平台-允许您使用容器的软件。
  2. Docker引擎是一个客户端-服务器应用程序(CE或Enterprise)。
  3. Docker Client是一个程序,允许您通过CLI与Docker守护程序进行交互。
  4. Docker守护程序是负责管理系统关键机制的Docker服务器。
  5. Tom Docker是容器中使用的信息存储。
  6. Docker注册表是映像的远程存储库。
  7. Docker Hub是默认使用的最大的Docker注册表。
  8. 存储库-具有相同名称的Docker映像的集合。

缩放比例:

  1. Docker网络子系统是允许您组织容器交互的环境。
  2. Docker Compose是一项简化使用多容器应用程序的技术。
  3. Docker Swarm是一个容器部署管理工具。
  4. Docker服务是生产中的容器。

之前我们说过,我们将通过与十几个甜甜圈进行比较来研究十二个Docker生态系统术语。 我们已经审查了12个术语,看来我们可以在这里停止。 但以防万一 ,我们将另一个术语添加到列表中。


在这里,以防万一,另一个甜甜圈

这个术语不是指Docker平台本身,而是指经常与Docker结合使用的技术。

Kubernetes



Kubernetes

Kubernetes是一项自动化容器化应用程序的部署,扩展和管理的技术。 它是容器编排产品领域无可争议的市场领导者。 如果您需要用于处理容器组的工具,以基于容器组扩展解决方案,请使用Kubernetes而不是Docker Swarm。 Kubernetes不是Docker的一部分。 他们和Docker更像是最好的朋友。

现在您已经熟悉了Docker的一般概念和术语,可以开始实际的实验了。

底线:用Docker烘烤甜甜圈


还记得我们上次比较Docker平台和厨房中安装的烤箱的情况吗? 现在是时候在您的“厨房”中安装Docker并做一些事情了。

Docker可以在Linux,Mac和Windows上本地运行。 如果您使用的是Mac或Windows,则可以从此处安装最新版本的Docker桌面。 顺便说一下,与此程序一起,还安装了Kubernetes。 如果要在其他平台上安装Docker,请在此处检查以找到合适的版本。

安装Docker之后,请看一下官方指南的前两部分。

下次我们将继续谈论Docker。 特别地,让我们谈谈Dockerfile文件。

亲爱的读者们! 如果在阅读本系列的资料时发现Docker,请告诉我们有关计划如何使用应用程序容器化技术的信息。

Source: https://habr.com/ru/post/zh-CN439978/


All Articles