在 VM 或 VDI 环境中运行适用于 Windows 的 Docker Desktop

一般来说,我们建议在 Mac、Linux 或 Windows 上本机运行 Docker Desktop。但是,如果虚拟桌面配置正确,则适用于 Windows 的 Docker Desktop 可以在虚拟桌面内运行。

要在虚拟桌面环境中运行 Docker Desktop,必须在提供虚拟桌面的虚拟机上启用嵌套虚拟化。这是因为,在底层,Docker Desktop 使用的是 Linux 虚拟机,在其中运行 Docker 引擎和容器。

虚拟桌面支持

笔记

Docker Business 客户仅可在 VMware ESXi 或 Azure VM 上支持在虚拟桌面上运行 Docker Desktop。

一旦正确设置了嵌套虚拟化,Docker 提供的支持就会扩展到在虚拟机内安装和运行 Docker Desktop。我们测试成功的唯一虚拟机管理程序是 VMware ESXi 和 Azure,并且不支持其他虚拟机。有关 Docker Desktop 支持的更多信息,请参阅 获取支持

对于 Docker 无法控制的问题和间歇性故障进行故障排除,您应该联系您的虚拟机管理程序供应商。每个虚拟机管理程序供应商都提供不同级别的支持。例如,Microsoft 支持在本地和 Azure 上运行嵌套 Hyper-V,但有一些版本限制。对于 VMWare ESXi,情况可能并非如此。

Docker 不支持在 VM 或 VDI 环境中的同一台计算机上运行 Docker Desktop 的多个实例。

开启嵌套虚拟化

在虚拟机上安装 Docker Desktop 之前,必须打开嵌套虚拟化。

在 VMware ESXi 上打开嵌套虚拟化

不支持vSphere VM 内其他虚拟机管理程序(例如 Hyper-V)的嵌套虚拟化 。但是,在 VMware ESXi VM 中运行 Hyper-V VM 在技术上是可行的,并且根据版本的不同,ESXi 包括硬件辅助虚拟化作为受支持的功能。对于内部测试,我们使用了具有 1 个 4 核 CPU 和 12GB 内存的虚拟机。

有关如何向来宾操作系统公开硬件辅助虚拟化的步骤, 请参阅 VMware 文档

在 Microsoft Hyper-V 上打开嵌套虚拟化

Microsoft 支持嵌套虚拟化在 Azure VM 内运行 Hyper-V。

对于 Azure 虚拟机, 请检查所选的 VM 大小是否支持嵌套虚拟化。 Microsoft 提供了 有关 Azure VM 大小的有用列表,并突出显示了当前支持嵌套虚拟化的大小。对于内部测试,我们使用 D4s_v5 机器。我们建议使用此规格或更高规格,以获得 Docker Desktop 的最佳性能。