原文链接: https://learn.microsoft.com/zh-cn/training/modules/intro-to-docker-containers
以下原文部分都为灰色的引用格式,自制的图片会进行标注。
什么是容器?
原文:
容器是一种松散隔离的环境,可用于生成和运行软件包。*
这些软件包包括在任何计算环境中快速可靠地运行应用程序所需的代码和所有依赖项。 我们将这些包称为容器映像。容器映像是我们用于分发应用程序的单位。
上图为我对于容器以及容器映像的理解
什么是软件容器化?
原文:
软件容器化是一种操作系统虚拟化方法,用于在不使用虚拟机 (VM) 的情况下部署和运行容器。 容器可在物理硬件上、云和 VM中运行,还可以在多个操作系统上运行。
什么是 Docker?
Docker 是一个用于开发、交付和运行容器的容器化平台。
Docker 不使用虚拟机监控程序,如果要开发和测试应用程序,可以在台式机或笔记本电脑上运行 Docker。 桌面版 Docker 支持 Linux、Windows 和 macOS。
对于生产系统,Docker 适用于服务器环境,包括 Linux 的多种变体和 Microsoft Windows Server 2016 及更高版本。 许多云(包括 Azure)都支持 Docker
Docker 体系结构
Docker 平台包含多个用于生成、运行和管理容器化应用程序的组件
Docker 引擎
Docker 引擎包含配置为客户端-服务器实现的多个组件,其中,客户端和服务器在同一主机上同时运行。 客户端使用 REST API 与服务器通信,该 API 还让客户端能够与远程服务器实例通信。
Docker 客户端
Docker 客户端是一个名为 docker 的命令行应用程序,它为我们提供了一个命令行接口 (CLI),用于与 Docker服务器进行交互。 docker 命令使用 Docker REST API 将指令发送到本地或远程服务器,并作为用于管理容器的主要接口。
Docker 服务器
Docker 服务器是一个名为 dockerd 的守护程序。 dockerd 守护程序通过 Docker REST API 响应来自客户端的请求,并且可以与其他守护程序进行交互。 此外,Docker 服务器还负责跟踪容器的生命周期。
Docker 对象
你将创建并配置多个对象以支持容器部署。 这些对象包括网络、存储卷、插件和其他服务对象。
我们不会在这里介绍所有这些对象,但请记住,我们可以根据需要创建和部署这些对象。
总结以及图示见下图: