docker moby 安装教程

它是什么Moby 是 Docker 发起的开源容器化项目,提供组件库与装配框架,也是 Docker Engine 的上游。

Moby 是 Docker 发起的开源容器化项目,提供组件库与装配框架,也是 Docker Engine 的上游。本文梳理其核心功能、适用场景,以及通过发行版仓库、compose 插件与源码编译三条获取路径的具体步骤。

👤
作者:谢林峰 | 更新:2026-10-05
软件信息
更新 2026-10-05

详细介绍

简介

Moby 是 Docker 发起的开源项目,提供一套容器化工具组件,也就是官方所说的“乐高积木”式组件库,以及把这些组件装配成定制化容器系统的框架。它要解决的是重复造轮子的问题:不必从零编写容器引擎,就能组合出符合自身需求的容器系统。适合希望裁剪、定制或自行编译容器引擎的开发者与运维人员,也适合想了解 Docker Engine 上游实现的学习者。核心优势在于组件可拆可换、装配过程透明,组件库、装配框架与社区讨论都集中在同一个项目下。

核心功能

  • 提供一套容器化工具组件库,官方称之为“乐高积木”式的工具箱组件,可按需取用其中任意一块。
  • 提供装配框架,把零散组件组合成一套定制化的、基于容器的系统,避免重复造轮子。
  • 包含 Docker 的完整核心功能:在 Alibaba Cloud Linux 4 中,系统默认通过 Moby 包提供容器引擎能力,命令与服务名仍为 docker、dockerd。
  • 是 Docker Engine 的开源上游项目,openEuler 仓库维护的容器引擎就来自这条上游链路。
  • 源码分两处产出:github.com/moby/moby 编译出 dockerd,github.com/docker/cli 编译出 docker 命令。
  • 同时是容器爱好者试验与交流想法的场所,组件、框架与讨论都归在同一个项目下。
  • 曾是 Windows 系统内运行 Linux 容器的默认方式,相关讨论在 GitHub 与 Reddit 上都能查到。

使用场景

  • 服务器需要容器引擎、而发行版仓库已提供 Moby 包时,直接用系统包管理器获取,例如 Alibaba Cloud Linux 4 默认通过 Moby 包提供容器引擎能力。
  • 使用 openEuler 并希望由发行版仓库维护容器引擎时,取 Moby 后再补上 docker compose 插件。
  • 需要裁剪容器系统、只保留所需组件的团队,用装配框架把组件拼成定制系统。
  • 想了解 Docker Engine 内部实现或自行产出 dockerd 的开发者,直接从 moby 仓库着手编译。
  • Fedora 用户在默认仓库的 docker 包与 moby-engine 包之间做取舍时,可先对比两者的说明再决定。
  • 一次性测试环境想快速跑起容器能力时,配置 Docker 官方源后用包管理器,或直接运行官方脚本 get.docker.com。

安装与获取步骤

  1. 先确认发行版与仓库:不同 Linux 发行版的获取方式不同,先查本机仓库是否提供 Moby 相关包(Alibaba Cloud Linux 4 默认通过 Moby 包提供容器引擎能力,Fedora 仓库有 moby-engine 包,openEuler 仓库维护 Moby)。
  2. 用发行版自带的包管理器从仓库取对应包,完成后系统应提供 docker 命令与 dockerd 服务名,用这两项判断是否就绪。
  3. 需要多服务编排时补上 docker compose 插件;openEuler 的做法是先取 Moby 再补插件,插件不会自动出现。
  4. 走源码路线:从 https://github.com/moby/moby 编译出 dockerd,从 https://github.com/docker/cli 编译出 docker 命令,两个仓库分别产出两部分。
  5. 只做一次性测试时,可配置 Docker 官方源后用包管理器,或直接运行官方脚本 https://get.docker.com,后者是最便捷的选择。
  6. 部署具体应用前确认依赖:例如 Weblate 的容器化部署把所有依赖包含在内,默认数据库为 PostgreSQL、缓存后端为 Valkey,几秒即可启动一个实例。

与 Docker CE 的区别

Docker CE 是面向用户的容器引擎发行版本,Moby 则是它背后的开源上游项目。社区资料指出:通过 github.com/moby/moby 可以编译出 dockerd,通过 github.com/docker/cli 可以编译出 docker 命令。Moby 项目由 Docker 公司所有,公司也在各处复用其中的代码片段。

命名上仍有争议,GitHub 上有 issue 直接提出把 moby 改回 docker,理由是这次改名带来困惑、对生态贡献有限。查阅结论与对照文档时以官方页面为准。

源码编译与版本对照

源码路线没有统一的“分支即版本”对应关系。Stack Overflow 上有人在 Docker/Moby 发布 17.06 CE 时提出疑问:仓库里并没有 17.06 分支,不清楚这一版究竟如何用 Moby 装配出来。因此在对照某个具体发行版本时,先在仓库与官方页面确认对应关系,再动手编译。

注意事项

  • Moby 项目由 Docker 公司所有,改名与定位在社区仍有争议,引用结论前以官方页面为准。
  • 不同发行版的包名不一致(Moby、moby-engine 等),升级、依赖关系与服务名以各自仓库说明为准。
  • 换用 Moby 前先确认机器上是否已有容器引擎,避免 docker 命令与 dockerd 服务名冲突。
  • compose 插件需单独补充,默认不会随容器引擎一起出现,缺插件时命令会提示找不到。
  • 官方脚本 get.docker.com 面向一次性测试环境,长期运行的机器按发行版仓库流程操作更稳妥。
  • 源码编译的依赖与构建环境需自行准备,仓库未给出统一参数表,具体以官方页面为准。

更新记录

最近更新:2026-10-05

软件参数速览

本站更新时间2026-10-05

常见问题

Moby 和 Docker 到底是什么关系?

Moby 是 Docker 发起的开源项目,也是 Docker Engine 的上游项目。openEuler 文档说明 Moby 包含 Docker 的完整核心功能,用仓库里的 Moby 包即可提供容器引擎,命令与服务名仍是 docker、dockerd。

系统里该选 moby-engine 包还是 docker 包?

Fedora 默认仓库同时提供 docker 包与 moby-engine 包,两者都能给出容器引擎能力。差异与取舍以发行版仓库说明和官方页面为准,切换前先确认现有容器数据与服务名是否受影响。

取了 Moby 之后 docker compose 用不了怎么办?

openEuler 的做法是先取 Moby,再补上 docker compose 插件。插件不会随容器引擎自动出现,缺插件时命令会提示找不到,按发行版仓库补插件即可。

想自己编译 dockerd,应该从哪个仓库开始?

从 https://github.com/moby/moby 编译出 dockerd,从 https://github.com/docker/cli 编译出 docker 命令。这是两个独立仓库,分别对应引擎与命令行,需要分别处理。

能用 Moby 直接对应到 17.06 CE 这样的发行版本吗?

Stack Overflow 上有人提出同样疑问:Docker/Moby 发布 17.06 CE 时,仓库里并没有 17.06 分支,具体如何装配并不清楚,这类对应关系需以官方页面为准。

只想在一次性测试环境跑起来,最快的方式是什么?

配置 Docker 官方源后用包管理器,或直接运行官方脚本 get.docker.com。后者是最便捷的选择,但官方实践建议只在一次性测试环境使用它。

用容器跑应用和获取容器引擎是一回事吗?

不是。Weblate 等应用提供容器化部署方式,几秒即可启动,依赖内置、默认数据库 PostgreSQL、缓存后端 Valkey;这属于在容器引擎之上跑应用,与获取容器引擎是两步。

Windows 上跑 Linux 容器和 Moby 有关系吗?

社区讨论提到 Moby 曾是 Windows 系统内运行 Linux 容器的默认方式,相关讨论可在 GitHub 与 Reddit 找到;具体支持范围与当前状态以官方页面为准。

相关推荐

Moby:Docker 开源容器引擎
本文深入解读 Docker Moby,这个驱动 Docker 引擎的开源容器框架。无论你想定制容器编排平台,还是学习容器底层技术,这里都有清晰的功能拆解、安装步骤与实战注意事项,帮你快速上手 Moby 项目。
docker moby端口映射配置
很多人第一次用 Moby(Docker引擎的开源上游)跑容器时,容器能起来却访问不到,问题基本都出在端口映射上。本篇从容器端口与宿主机端口的对应关系讲起,说明 docker moby端口映射配置的查看、修改、验证方法,帮你避开「映射了却没生效」的常见坑。
docker moby国内加速配置
想给 Docker Moby做国内加速,却卡在镜像仓库拉不动?本文用最直白的方式讲清 docker moby国内加速配置的完整思路:从官方渠道获取程序、找到配置文件位置、改写镜像源地址,再到验证加速是否生效,并附上常见报错的处理办法,帮初学者少走弯路。
Docker Moby学生免费吗
Docker Moby学生免费吗?本文面向初学者,讲清 Moby与 Docker的关系、开源项目如何免费获取,并给出 Windows与 macOS的实操安装步骤、首次配置要点和常见报错的处理思路,帮你少走弯路。
Docker Moby最新版本特性
提供 dockermoby本特性 Windows 版本的下载入口、版本信息与安装步骤,安装前请核对系统版本与架构。
docker moby 离线 安装
详解 docker moby 在 Windows 下的安装与使用方法,含步骤说明与常见配置,新手可按序操作。