Dory:兼容macOS与Linux,OrbStack 和 Docker Desktop 的开源替代
-
-
2026 年 7 月 25 日 下午 2:31 #34354
Dory(
Augani/dory,GitHub 1,100+ Stars)是一个 原生 macOS 开源应用,用于在 Mac 上运行 Docker 容器、Kubernetes 集群和完整的 Linux 虚拟机(含图形桌面)。它直接定位为 OrbStack 和 Docker Desktop 的替代品,采用 GPL-3.0 许可证,完全免费,无需账号、无遥测、无云控制面。项目地址:https://github.com/Augani/dory
官网:https://augani.github.io/dory
当前版本:v0.3.2(2026年7月)
技术栈:SwiftUI + Rust核心特性
1. Docker 运行时
- Docker 29 API 和 CLI、Buildx、BuildKit、Compose v2
- 完整支持绑定挂载、命名卷、自定义网络
- 通过 FEX 在 Apple Silicon 上运行 x86/amd64 镜像
- Docker 套接字兼容,支持 Testcontainers、Dev Containers
2. Kubernetes(可选组件)
- 一键启动 k3s 集群
- 可选 Kubernetes v1.34 / v1.35 / v1.36
- 原生资源浏览器(Pod、Deployment、Service、ConfigMap、Secret、Ingress)
3. Linux 机器(可选组件)
- 完整桌面 Linux:Debian 13、Ubuntu 24.04 LTS、Kali rolling,带 Xfce 图形桌面(Retina)
- 轻量无头 VM:Alpine 系统,适合服务端和 CI
- 支持快照、克隆、导出、导入
- 可配置 CPU(1-8核)、内存(1-16 GB)
- Mac 主目录共享 + 可选目录挂载
4. 迁移工具
从 Docker Desktop、OrbStack、Colima、Rancher Desktop、Podman 等自动导入:
- 镜像、卷、网络、容器配置
- 写前校验、碰撞检测
- 只读源、失败回滚
5. 网络功能
- 自动域名
*.dory.local - 自定义主机名路由
- 本地 CA + 可信 HTTPS
- 低端口转发(80/443)
- LAN 和 Tailscale 可选开放
- 企业网络代理配置向导
6. AI Agent / MCP 原生支持
Dory 内置了完整的 MCP 服务器,这是它与所有竞品最显著的差异化特性:
dory mcp serve --read-only dory agent guide --json dory sandbox run --json --network none -- /bin/sh -lc 'uname -a'支持的操作:
dory.agent_guide— 机器可读的功能指南dory.doctor— 运行时诊断dory.machine_exec— 在 Linux 机器中执行命令dory.sandbox_run— 创建隔离沙箱 VMdory.wait/dory.events— 等待和事件流
沙箱沙箱功能:隔离 VM、默认无主机文件访问、非 root 执行、只读挂载、出站网络策略、临时密钥授权、TTL 自动清理。
7. 引擎后端选择
后端 用途 Dory 守护进程 完整产品:共享引擎、机器、K8s、存储、联网、Auto-Idle 已有引擎 复用 Docker Desktop / OrbStack / Colima 等的 Docker 套接字,只使用 Dory 的 UI 自定义套接字 连接到任意 Docker 兼容 Unix 套接字 8. 存储管理
- 默认
~/Library/Application Support/Dory/Dory.dorydrive - 稀疏增长(128 GiB – 2 TiB)
- 外置 APFS 驱动器支持
- 带校验的备份和恢复
9. 其他
- Auto-Idle:空闲 5-60 分钟后自动休眠引擎
- 诊断修复:
dory doctor+dory repair all自动修复问题 - 无遥测、无账号:完全离线可用
- 定时备份:Linux 机器可按小时/天/周自动备份并校验
快速上手
# 方式一:Homebrew 安装(推荐) brew install --cask Augani/dory/dory # 方式二:下载 DMG # 从 GitHub Releases 下载 Dory-x.y.z-arm64.dmg # 启动后,使用标准 Docker 命令 docker context use dory docker run --rm hello-world # 完整运行时检查 dory doctor --active dory routes --json dory disk --jsonDocker Core 基础安装包约 224 MB DMG(安装后约 409 MB),Kubernetes、Linux 机器等为可选签名组件,按需下载。
竞品对比
全面对比矩阵
对比维度 Dory OrbStack Docker Desktop Colima Rancher Desktop Podman Desktop Finch Lima 开源 ✅ GPL-3.0 ❌ 闭源 ❌ 闭源 ✅ MIT ✅ Apache 2.0 ✅ Apache 2.0 ✅ Apache 2.0 ✅ Apache 2.0 价格 免费 个人免费/商业 \(8/月 | 个人免费/商业\)9-24/月 免费 免费 免费 免费 免费 macOS ✅ AS(Intel 待定) ✅ Intel+AS ✅ Intel+AS ✅ Intel+AS ✅ Intel+AS ✅ Intel+AS ✅ Intel+AS ✅ Intel+AS Linux ❌ ❌ ✅ ✅ ✅ ✅ ✅ ✅ Windows ❌ ❌ ✅ ❌ ✅ ✅ ✅ ❌ 图形界面 ✅ SwiftUI 原生 ✅ Swift 原生 ✅ Electron ❌ CLI 仅 ✅ 原生 ✅ Electron ❌ CLI 仅 ❌ CLI 仅 桌面应用 ✅ ✅ ✅ ❌ ✅ ✅ ❌ ❌ Docker API ✅ 原生 ✅ 原生 ✅ 原生 ✅ 原生 ✅ dockerd 模式 ⚠️ 套接字模拟 ⚠️ nerdctl ⚠️ nerdctl Docker Compose ✅ v2 ✅ v2 ✅ v2 ✅ v2 ✅ dockerd/⚠️ nerdctl ⚠️ podman-compose ⚠️ nerdctl compose ⚠️ nerdctl 容器引擎 Docker Docker Docker Docker/containerd dockerd/containerd Podman containerd containerd Kubernetes ✅ k3s(可选组件) ✅ k3s ✅ 内置 ✅ k3s(–kubernetes) ✅ k3s 内置 ⚠️ Kind/Minikube 集成 ❌ ❌ Linux 机器 ✅ 完整桌面+无头 ✅ 16 种发行版 ❌ ❌ ❌ ❌ ❌ ✅(底层) 图形化 Linux 桌面 ✅ Xfce(Debian/Ubuntu/Kali) ❌ ❌ ❌ ❌ ❌ ❌ ❌ x86 模拟 ✅ FEX ✅ Rosetta ✅ Rosetta ✅ Rosetta (–vz-rosetta) ✅ Rosetta ✅ QEMU ✅ Rosetta ✅ QEMU/Rosetta 自动域名 ✅ *.dory.local ✅ *.orb.local ❌ ❌ ❌ ❌ ❌ ❌ 迁移工具 ✅ 全自动多来源 ✅ 从 Docker Desktop ❌ ❌ ❌ ❌ ❌ ❌ MCP/AI Agent ✅ 内置 MCP + 沙箱 ❌ ❌ ❌ ❌ ❌ ❌ ❌ USB 透传 ⚠️ 主机发现就绪/透传待定 ✅ ✅ ❌ ❌ ❌ ❌ ❌ Auto-Idle 休眠 ✅ ❌ ❌ ❌ ❌ ❌ ❌ ❌ 多后端 UI ✅ 可接已有 Docker 引擎 ❌ ❌ ❌ ❌ ❌ ❌ ❌ 多配置文件 ❌ ❌ ❌ ✅ profiles ❌ ❌ ❌ ❌ GPU AI 加速 ⚠️ 预览 Venus ❌ ✅ ✅ krunkit ❌ ✅ AI Lab ❌ ❌ 资源占用(空闲) ~200-400 MB ~50-200 MB ~2-4 GB ~400-600 MB ~1-1.5 GB ~200-600 MB ~400 MB ~300 MB 启动时间 ~5-10 秒 ~2-3 秒 ~20-30 秒 ~3-5 秒 ~15-30 秒 ~5-10 秒 ~5-10 秒 ~5-10 秒 后台 CPU 空闲 极低 ~0.1% ~2-5% 极低 低 低 低 低 安装包大小 ~224 MB DMG ~50 MB ~600 MB ~20 MB(CLI) ~300 MB ~200 MB ~100 MB ~30 MB(CLI) 成熟度 v0.3.2 较新 v1.x 成熟 v4.x 成熟 v0.8 成熟 v1.18 成熟 v1.20 成熟 v1.4 成熟 v0.x 成熟 竞品详细分析
1. OrbStack(最直接的竞品)
定位:macOS 上最快、最轻量的 Docker 替代品。
OrbStack 是 Dory 最直接的竞争对手。两者都是 macOS 原生应用、都提供自动域名、都内置 k3s。关键差异:
- 性能:OrbStack 启动速度(2秒 vs 5-10秒)和空闲资源占用(~0.1% CPU)仍领先 Dory
- 成熟度:OrbStack v1.x 更加成熟稳定,Dory v0.3.2 还在快速迭代
- Intel 支持:OrbStack 支持 Intel Mac,Dory 暂时仅 Apple Silicon
- 开源:Dory(GPL-3.0)vs OrbStack(闭源商业)— 对开源社区来说这是根本性差异
- Linux 桌面:Dory 支持完整图形化 Linux 桌面,OrbStack 只有终端
- MCP/AI 沙箱:Dory 独有的 AI Agent 原生支持
- 多后端:Dory 可复用 OrbStack 的引擎只用自己的 UI
选 OrbStack 如果:你追求最极致的性能和成熟度,不介意闭源,只需要终端级 Linux 机器。
选 Dory 如果:你在乎开源、需要图形化 Linux 桌面、需要 AI Agent 集成。
2. Docker Desktop(行业标准)
定位:官方 Docker 桌面客户端,生态最完善。
- 兼容性:100% 的 Docker 标准,Docker Scout、Extensions 市场等独有功能
- 定价:大型组织需要付费($9-24/用户/月),Dory 完全免费
- 资源占用:空闲 2-4 GB RAM,MacBook 上非常吃资源
- macOS 体验:Electron 应用,不如 Dory/OrbStack 的 Swift 原生应用流畅
- 无 Linux 机器:不能运行完整 Linux 发行版
选 Docker Desktop 如果:需要 Docker Extensions、Scout 等官方生态、公司已付费。
选 Dory 如果:不想付费、需要更轻量的运行时、需要 Linux 桌面。
3. Colima(CLI 轻量之选)
定位:命令行界面下最轻量的 Docker 运行时。
- 简单纯粹:
colima start启动,colima stop关闭,没有 GUI - 多运行时:支持 Docker、Containerd、Kubernetes、Incus
- 多配置文件:可以为不同项目配置不同 VM 资源
- 资源占用少:空闲约 400-600 MB
- 无 GUI:完全终端操作,不适合习惯可视化界面的用户
- 无 Linux 机器:不能运行完整 Linux 发行版
- 文件系统性能:使用 sshfs 时较慢(可换 VirtioFS)
选 Colima 如果:你习惯纯 CLI 工作流、需要极轻量的 Docker 运行时、想在不同项目间切换资源配置。
选 Dory 如果:你需要 GUI、Linux 桌面、自动域名、Agent 集成等高级功能。
4. Rancher Desktop(Kubernetes 优先)
定位:为 Kubernetes 开发者设计的一站式桌面工具,来自 SUSE。
- Kubernetes 最强:内置 k3s,可选版本,kubectl/Helm 开箱即用
- 引擎可选:可在 dockerd 和 containerd 间切换
- 跨平台:macOS、Windows、Linux 全支持
- 较重:空闲约 1-1.5 GB RAM,加上 k3s 约 2 GB
- 无独立 Linux 机器:没有单独的 Linux 发行版管理功能
- Lima 底层:性能不如 OrbStack 的自研引擎
选 Rancher Desktop 如果:你的日常工作是 Kubernetes 开发、需要在 Windows/Mac/Linux 间统一体验。
选 Dory 如果:你同时需要 Docker 和 Linux 桌面、希望更轻量的 K8s 体验。
5. Podman Desktop(守护进程无关)
定位:Red Hat 出品的守护进程无关、默认 rootless 的容器运行时。
- 安全架构:无守护进程、默认 rootless,容器逃逸风险低
- 跨平台:macOS、Windows、Linux
- Podman CLI:
docker命令的替换品,但需要习惯 - Docker Compose 兼容性:
podman-compose在复杂场景下可能有差异 - macOS 性能:通过 VM 运行,不如 Dory/OrbStack 优化
- 无 Linux 机器:不能运行完整 Linux 发行版
选 Podman 如果:你的组织有严格的安全合规要求(金融、医疗)、主要用 Linux 开发。
选 Dory 如果:你需要完全的 Docker 兼容性、Linux 桌面、macOS 原生体验。
6. Finch(AWS 生态)
定位:AWS 推出的开源容器开发工具,使用 containerd + nerdctl。
- AWS 友好:内置 ECR 认证集成
- 开源:Apache 2.0
- Containerd 原生:使用 containerd 而不是 Docker 引擎
- CLI 仅:无图形界面
- Docker API 有限:需要通过 Finch Daemon 桥接,非原生 Docker 体验
- 社区较小:相比其他选项用户较少
选 Finch 如果:你的工作流深度集成 AWS(ECR、ECS)、偏好 containerd 生态。
选 Dory 如果:你需要完整的 Docker 兼容性、GUI、Linux 桌面。
7. Lima(底层引擎)
定位:Linux 虚拟机管理器,是 Colima、Finch、Rancher Desktop 的底层组件。
- 非面向终端用户:是基础设施层,需要自己配置
- 最大灵活性:可自定义虚拟机配置
- 使用门槛高:需要手动配置 YAML
- 无 GUI:纯 CLI
选 Lima 如果:你需要底层控制、自己构建工具链。
选 Dory 如果:你想要开箱即用的完整产品。
适用场景
选 Dory 的场景
- 你需要 Linux 图形桌面:在 Mac 上运行带 Xfce 的 Ubuntu/Debian/Kali
- 你在乎开源和免费:不想被 Docker Desktop 或 OrbStack 的商业许可限制
- 你需要 AI Agent 集成:使用 MCP 协议让 AI 工具直接操作容器和沙箱
- 你需要从多平台迁移:从 Docker Desktop/OrbStack/Colima 等一键迁移
- 你希望一个应用管理所有运行时:Docker + K8s + Linux VM + 桌面全部在一个原生应用中
- 你不想装 agent 在机器上:Dory 是自包含的,不需要额外守护进程
不适合 Dory 的场景
- Intel Mac 用户:目前仅 Apple Silicon
- 需要 Windows/Linux 支持:仅 macOS
- 追求最极致性能:OrbStack 在启动速度和资源占用上仍领先
- 需要 Docker Extensions 生态:目前不支持
- 团队需要管理控制台:Dory 是个本地工具,没有团队管理功能
项目状态
- 当前版本:v0.3.2(2026年7月17日)
- Apple Silicon 原生:通过 Virtualization.framework(macOS 15+)和 Hypervisor.framework(macOS 14 备用)运行
- Intel Mac:计划后续支持
- 即将推出:多节点集群、USB IP 透传、音频透传
小结
Dory 是 macOS 容器和 Linux 开发工具领域一个令人兴奋的新选择。它不像 Colima 那样过于简单(无 GUI),不像 Docker Desktop 那样臃肿(2-4 GB 空闲 RAM),也不像 OrbStack 那样闭源。
它在以下方面具有独特性:
- 图形化 Linux 桌面 — 唯一支持在 Mac 上运行完整 Linux 桌面环境的容器工具
- AI Agent 原生集成 — 内置 MCP 服务器和隔离沙箱,为 AI 编程时代而生
- 开源 + 免费 — GPL-3.0,无商业限制
- 多后端架构 — 可复用已有 Docker 引擎只使用其 UI
如果它成熟度进一步提升(到达 v1.0),补齐 Intel 支持和少数缺失功能,它完全有潜力成为 macOS 上”开源版的 OrbStack”。
项目地址:https://github.com/Augani/dory
官网:https://augani.github.io/dory
许可证:GPL-3.0
安装:brew install --cask Augani/dory/dory
-
- 抱歉,回覆主題必需先登入。