什么是 moby 运行时?
What is the moby runtime?
目前正在学习docker和容器化,对"moby runtime"这个词有些迷惑。
据我所知,整个 docker 已拆分为多个库/工具/组件,允许开发人员使用 moby 运行time 构建自己的 docker 版本。
这个假设是否正确?
moby 运行time 和 e.g. 之间究竟有什么关系?如果我使用官方 docker 页面,我会在我的 windows 机器上下载 docker 桌面版?
为什么Microsoft 使用 moby 运行time 来 运行 IoT Edge 等某些服务而不是官方 docker 构建?他们使用自己定制的 docker 版本吗?
是的,我认为你的理解是正确的。
Moby is an open framework created by Docker to assemble specialized container systems without reinventing the wheel. It provides a “lego set” of dozens of standard components and a framework for assembling them into custom platforms. At the core of Moby is a framework to assemble specialized container systems which provides: Components, Tools, Assemblies.
还说:
Moby IS RECOMMENDED for anyone who wants to assemble a container-based system: Hackers who want to customize or patch their Docker build.
下一个图可能会让你更清楚:
由此可见,您可以像Docker CE
、Docker EE
一样在moby项目的基础上开始自己的项目。并且here is a good article I think explain it clearly. Also this来自官方小伙伴们对某种关系的回应。
Moby 是 Docker 中的一个过度使用的名称。除了作为他们的吉祥物之一的名字(Moby 是您经常在徽标中看到的蓝鲸)之外,Moby 是:
Docker 已向社区提供的上游开源项目。这与 Docker 的闭源部分和带有 Docker 商标的部分分开。您可以在他们的 Github repositories 中看到这些项目。您可以像将 Fedora 视为 RedHat 的上游一样来考虑 Moby 项目,Docker 在 Moby 项目存储库中进行大部分开发,并从那里打包特定版本,名称为 Docker您看到的是 Docker CE 和 Docker EE。有些项目可能永远存在于此,但 Docker 也努力将这些项目进一步向上游移动,由外部组织管理,例如containerd 和 notary 都已转移到 Linux 基金会。
以前是docker/docker,现在移到moby/moby的版本库名称。这是docker引擎的核心。
是使用LinuxKit打包的虚拟机。此 VM 是 运行 docker 容器的最小环境,非常适合 运行 不想管理 VM 本身的桌面和嵌入式环境。
后者很可能就是您所想的 "Moby Runtime"。在 Windows 或 Mac 环境中 运行 Linux 容器需要一个虚拟机(docker 容器依赖于许多不容易实现的内核功能仿真)。您甚至可以在 LinuxKit examples 中看到构建类似 VM 的示例。该 VM 内部是 Linux 主机上本机安装的相同 Docker CE 引擎。 VM 本身由 Docker.
构建和维护
目前正在学习docker和容器化,对"moby runtime"这个词有些迷惑。
据我所知,整个 docker 已拆分为多个库/工具/组件,允许开发人员使用 moby 运行time 构建自己的 docker 版本。
这个假设是否正确?
moby 运行time 和 e.g. 之间究竟有什么关系?如果我使用官方 docker 页面,我会在我的 windows 机器上下载 docker 桌面版?
为什么Microsoft 使用 moby 运行time 来 运行 IoT Edge 等某些服务而不是官方 docker 构建?他们使用自己定制的 docker 版本吗?
是的,我认为你的理解是正确的。
Moby is an open framework created by Docker to assemble specialized container systems without reinventing the wheel. It provides a “lego set” of dozens of standard components and a framework for assembling them into custom platforms. At the core of Moby is a framework to assemble specialized container systems which provides: Components, Tools, Assemblies.
还说:
Moby IS RECOMMENDED for anyone who wants to assemble a container-based system: Hackers who want to customize or patch their Docker build.
下一个图可能会让你更清楚:
由此可见,您可以像Docker CE
、Docker EE
一样在moby项目的基础上开始自己的项目。并且here is a good article I think explain it clearly. Also this来自官方小伙伴们对某种关系的回应。
Moby 是 Docker 中的一个过度使用的名称。除了作为他们的吉祥物之一的名字(Moby 是您经常在徽标中看到的蓝鲸)之外,Moby 是:
Docker 已向社区提供的上游开源项目。这与 Docker 的闭源部分和带有 Docker 商标的部分分开。您可以在他们的 Github repositories 中看到这些项目。您可以像将 Fedora 视为 RedHat 的上游一样来考虑 Moby 项目,Docker 在 Moby 项目存储库中进行大部分开发,并从那里打包特定版本,名称为 Docker您看到的是 Docker CE 和 Docker EE。有些项目可能永远存在于此,但 Docker 也努力将这些项目进一步向上游移动,由外部组织管理,例如containerd 和 notary 都已转移到 Linux 基金会。
以前是docker/docker,现在移到moby/moby的版本库名称。这是docker引擎的核心。
是使用LinuxKit打包的虚拟机。此 VM 是 运行 docker 容器的最小环境,非常适合 运行 不想管理 VM 本身的桌面和嵌入式环境。
后者很可能就是您所想的 "Moby Runtime"。在 Windows 或 Mac 环境中 运行 Linux 容器需要一个虚拟机(docker 容器依赖于许多不容易实现的内核功能仿真)。您甚至可以在 LinuxKit examples 中看到构建类似 VM 的示例。该 VM 内部是 Linux 主机上本机安装的相同 Docker CE 引擎。 VM 本身由 Docker.
构建和维护