Docker Desktop 的 Mac 虚拟机管理器
Docker Desktop for Mac 中的虚拟机管理程序(VMM)负责创建和管理用于运行容器的虚拟机。根据您的系统架构和性能需求,您可以在 Docker Desktop 的 设置中选择多种 VMM 选项。本页面概述了可用的选项。
Docker VMM(测试版)
Docker VMM 是 Docker Desktop 4.35 中引入的一种新型、专为容器优化的虚拟机监控程序(Hypervisor),目前仅适用于 Apple Silicon Mac 机型。其提升的运行速度和资源利用效率使其成为优化工作流程的理想选择。
Docker VMM 专为 Apple Silicon 设备量身打造,带来令人振奋的全新进展。通过对 Linux 内核与虚拟机监控程序(Hypervisor)层的优化,Docker VMM 在常见开发者任务中实现了显著的性能提升。
Docker VMM 提供的一些关键性能优化包括:
- 更快的 I/O 操作:在冷缓存情况下,使用
find遍历大型共享文件系统比使用 Apple Virtualization Framework 快 2 倍。 - 改进的缓存机制:借助预热缓存,性能最高可提升25倍,甚至超过原生Mac操作。
这些改进直接提升了那些依赖频繁文件访问及容器化开发期间系统整体响应速度的开发者体验。Docker VMM 实现了显著的速度飞跃,有助于实现更流畅的工作流和更快的迭代周期。
注意
Docker VMM 要求至少为 Docker Linux 虚拟机分配 4GB 内存。内存容量需在启用 Docker VMM 之前进行提升,此操作可通过 设置 中的 资源 选项卡完成。
已知问题
由于 Docker VMM 仍处于 Beta 阶段,目前存在一些已知的限制:
- Docker VMM 当前不支持 Rosetta,因此对 amd64 架构的模拟速度较慢。Docker 正在探索可能的解决方案。
- 某些数据库(如 MongoDB 和 Cassandra)在 Docker VMM 中使用 virtiofs 时可能会失败。此问题预计将在未来版本中得到解决。
Apple 虚拟化框架
Apple 虚拟化框架(Apple Virtualization Framework)是用于在 Mac 上管理虚拟机的稳定且成熟的选择。多年来,它一直是众多 Mac 用户信赖的可靠方案。该框架最适合那些偏好经过验证、具备出色性能和广泛兼容性的解决方案的开发者。
QEMU(传统版)适用于 Apple Silicon
注意
QEMU 将在后续版本中被弃用。
QEMU 是苹果 Silicon Mac 的传统虚拟化选项,主要为旧应用场景提供支持。
Docker 建议迁移到 newer alternatives,例如 Docker VMM 或 Apple Virtualization Framework,因为它们提供更优越的性能和持续的支持。特别是 Docker VMM,它在速度上有显著提升,并能提供更高效的开发环境,是面向 Apple Silicon 设备开发者的一个极具吸引力的选择。
请注意,这与使用 QEMU 来模拟非原生架构进行 多平台构建无直接关联。
HyperKit(旧版)适用于基于Intel的Mac电脑
注意
HyperKit 将在未来版本中被弃用。
HyperKit 是另一种遗留的虚拟化选项,专为基于 Intel 的 Mac 设计。与 QEMU 一样,它仍可使用,但已被标记为弃用。Docker 建议切换至现代替代方案,以获得更优性能,并确保您的配置具备长期适用性。