Brave
@47c132035ed7a1105a867946b99d67af 网络安全与大数据研究小组 公开
讨论 Dory:兼容macOS与Linux,OrbStack 和 Docker Desktop 的开源替代

Dory:兼容macOS与Linux,OrbStack 和 Docker Desktop 的开源替代

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 — 创建隔离沙箱 VM
  • dory.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 --json

Docker Core 基础安装包约 224 MB DMG(安装后约 409 MB),Kubernetes、Linux 机器等为可选签名组件,按需下载。


竞品对比

全面对比矩阵

对比维度DoryOrbStackDocker DesktopColimaRancher DesktopPodman DesktopFinchLima
开源✅ 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
容器引擎DockerDockerDockerDocker/containerddockerd/containerdPodmancontainerdcontainerd
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 CLIdocker 命令的替换品,但需要习惯
  • 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 的场景

  1. 你需要 Linux 图形桌面:在 Mac 上运行带 Xfce 的 Ubuntu/Debian/Kali
  2. 你在乎开源和免费:不想被 Docker Desktop 或 OrbStack 的商业许可限制
  3. 你需要 AI Agent 集成:使用 MCP 协议让 AI 工具直接操作容器和沙箱
  4. 你需要从多平台迁移:从 Docker Desktop/OrbStack/Colima 等一键迁移
  5. 你希望一个应用管理所有运行时:Docker + K8s + Linux VM + 桌面全部在一个原生应用中
  6. 你不想装 agent 在机器上:Dory 是自包含的,不需要额外守护进程

不适合 Dory 的场景

  1. Intel Mac 用户:目前仅 Apple Silicon
  2. 需要 Windows/Linux 支持:仅 macOS
  3. 追求最极致性能:OrbStack 在启动速度和资源占用上仍领先
  4. 需要 Docker Extensions 生态:目前不支持
  5. 团队需要管理控制台: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 那样闭源。

它在以下方面具有独特性:

  1. 图形化 Linux 桌面 — 唯一支持在 Mac 上运行完整 Linux 桌面环境的容器工具
  2. AI Agent 原生集成 — 内置 MCP 服务器和隔离沙箱,为 AI 编程时代而生
  3. 开源 + 免费 — GPL-3.0,无商业限制
  4. 多后端架构 — 可复用已有 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