Mac 上适用于 Docker Desktop 的 Virtual Machine Manager
Docker Desktop for Mac 中的虚拟机管理器 (VMM) 负责创建和管理用于运行容器的虚拟机。根据您的系统架构和性能需求,您可以从 Docker Desktop 设置中的多个 VMM 选项中进行选择。本页概述了可用选项。
Docker VMM(测试版)
Docker VMM 是 Docker Desktop 4.35 中引入的一种新的容器优化虚拟机管理程序,仅在 Apple Silicon Mac 上提供。其增强的速度和资源效率使其成为优化工作流程的理想选择。
Docker VMM 带来了专为 Apple Silicon 机器量身定制的激动人心的进步。通过优化 Linux 内核层和虚拟机管理程序层,Docker VMM 在常见的开发人员任务中提供了显著的性能增强。
Docker VMM 提供的一些关键性能增强包括:
- 更快的 I/O作:使用冷缓存,迭代大型共享文件系统
find
比使用 Apple Virtualization Framework 时快 2 倍。 - 改进的缓存:使用热缓存,性能可以提高多达 25 倍,甚至超过本机 Mac作。
这些改进直接影响在容器化开发过程中依赖频繁文件访问和整体系统响应能力的开发人员。Docker VMM 标志着速度的重大飞跃,实现了更流畅的工作流程和更快的迭代周期。
注意
Docker VMM 需要为 Docker Linux VM 分配至少 4GB 的内存。在启用 Docker VMM 之前,需要增加内存,这可以从 Settings (设置) 中的 Resources (资源) 选项卡中完成。
已知问题
由于 Docker VMM 仍处于 Beta 阶段,因此存在一些已知限制:
- Docker VMM 目前不支持 Rosetta,因此 amd64 架构的模拟速度很慢。Docker 正在探索潜在的解决方案。
- 某些数据库(如 MongoDB 和 Cassandra)在将 virtiofs 与 Docker VMM 一起使用时可能会失败。此问题有望在未来版本中得到解决。
Apple 虚拟化框架
Apple Virtualization Framework 是在 Mac 上管理虚拟机的稳定且完善的选项。多年来,它一直是许多 Mac 用户的可靠选择。此框架最适合喜欢具有稳定性能和广泛兼容性的成熟解决方案的开发人员。
适用于 Apple Silicon 的 QEMU(旧版)
注意
QEMU 将在未来的发行版中弃用。
QEMU 是 Apple Silicon Mac 的传统虚拟化选项,主要支持较旧的用例。
Docker 建议过渡到更新的替代方案,例如 Docker VMM 或 Apple Virtualization Framework,因为它们提供卓越的性能和持续的支持。尤其是 Docker VMM,它提供了显著的速度改进和更高效的开发环境,使其成为使用 Apple Silicon 的开发人员的热门选择。
请注意,这与在多平台构建中使用 QEMU 模拟非原生架构无关。
适用于基于 Intel 的 Mac 的 HyperKit(旧版)
注意
HyperKit 将在将来的版本中弃用。
HyperKit 是另一个传统的虚拟化选项,专门针对基于 Intel 的 Mac。与 QEMU 一样,它仍然可用,但被视为已弃用。Docker 建议切换到现代替代方案以获得更好的性能并使您的设置面向未来。