【发布时间】:2020-03-04 13:34:53
【问题描述】:
谁能解释一下两者之间的区别,其中包含 docker 运行时?
【问题讨论】:
标签: docker containers docker-machine
谁能解释一下两者之间的区别,其中包含 docker 运行时?
【问题讨论】:
标签: docker containers docker-machine
Docker Engine 是 Docker 的核心产品,包括它的守护进程 (dockerd) 以及它的 CLI (docker)。 Docker Daemon 只是 Docker Engine 的一部分。
Docker Engine 是一种开源容器化技术,用于 构建和容器化您的应用程序。 Docker 引擎充当 客户端-服务器应用程序:
- 具有长期运行的守护进程 dockerd 的服务器。
- APIs 指定程序可以用来与之交谈并指示 Docker 守护进程。
- 命令行界面 (CLI) 客户端 docker。
【讨论】:
它们是相同的,也不是。
Docker 守护进程和引擎引用同一个dockerd 进程。 Docker 本身不再在 dockerd 二进制文件中包含容器运行时。很久以前,它已移出到 runc 项目,您可以将其他运行时换成您自己的用例。
在该运行时和 docker 守护进程之间是 containerd,用于管理图像、容器和文件系统层。因此,您可以将 docker 守护进程视为被分解为各种微服务。
【讨论】:
这是一张图片,我觉得它比文字更容易理解。我找到了here。
【讨论】: