在 azure 虚拟机 windows 10 上安装 docker
Posted
技术标签:
【中文标题】在 azure 虚拟机 windows 10 上安装 docker【英文标题】:Installing docker on azure virtual machine windows 10 【发布时间】:2017-12-02 16:25:29 【问题描述】:在 azure 虚拟机上安装 docker 时出现错误。
m/c 配置:azure vm、Windows 10 企业版、Intel 2.4 GHz、7 GB RAM、64 位操作系统、基于 x64 的处理器。 我浏览了一些博客,他们要求我在 azure vm 上启用嵌套虚拟化,如下所示。
Set-VMProcessor -VMName MobyLinuxVM -ExposeVirtualizationExtensions $true
但这也没有帮助,虚拟 m/c MobyLinuxVM 无法启动。 我已经从 Windows 功能中安装了 Hyper-V 和 Container 组件。但是错误显示“因为 Hyper-V 组件之一没有运行”,而 Hyper-V 的所有组件都在运行。 我检查了任务管理器性能选项卡,我没有看到虚拟化选项。我在 Azure VM 上安装 docker 时无法修改 Bios 中的虚拟化设置。我也尝试禁用 Windows 防火墙,但没有帮助。 那么如何在 azure virtual m/c windows 10 企业版上运行 docker。
【问题讨论】:
您可以在 Azure Windows 10 企业版上安装 docker。请确保您应该首先启用 Hyper-V。虚拟化可在 DV3 和 EV3 VM 上使用。请参考azure.microsoft.com/en-us/blog/nested-virtualization-in-azure 我在实验室进行了测试,它在我的 Windows 10 VM 上运行良好,其 sku 为Standard D2 v3
。
【参考方案1】:
Microsoft 提供预安装 docker 企业版的映像。这甚至适用于 B2s VM。只需在创建 VM 时选择任何“带有容器的 Microsoft Server 2019/2016 数据中心”映像即可。
【讨论】:
【参考方案2】:如果您在安装了 Docker 的 Azure Windows 10 VM 上遇到此错误,这里是一个解决方案:
确保通过运行 PowerShell cmdlet 启用 Windows Hyper-V 功能:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All -Verbose
确保通过运行 PowerShell cmdlet 启用 Windows 容器功能:
Enable-WindowsOptionalFeature -Online -FeatureName Containers -All -Verbose
通过在提升的命令提示符中运行以下命令,确保 Hypervisor 设置为在引导配置数据库 (BCD) 中自动启动:
bcdedit /set hypervisorlaunchtype Auto
运行上述所有操作并重新启动 Azure VM,Docker 应该会正常启动。
【讨论】:
Docker 将尝试使用 WSL 启动,默认情况下会在启动时显示崩溃屏幕。也会有切换后端的提示。只需关闭崩溃消息窗口并在出现提示时选择“使用 Hyper-V”。 Docker 将重新启动,没有任何问题。【参考方案3】:Azure 还不允许嵌套虚拟化。
为此,您需要使用 DSv3 或 E3 实例。像往常一样使用 docker
【讨论】:
使用标准 D2s v3(2 vcpus,8 GB 内存)测试,创建 VM,安装 docker for windows,当提示激活 hyper-V 时,选择是并重新启动。一切都很好 好吧,dsv3 在撰写本文时不可用,所以...@CedricDumont 我在使用 D2s_v3 时遇到了同样的问题。没想到它可以工作,但是当我将其更改为 D4s_v3 时,Docker 启动成功。 从 D2s_v3 切换 -> D4s_v3 也对我有用。谢谢!以上是关于在 azure 虚拟机 windows 10 上安装 docker的主要内容,如果未能解决你的问题,请参考以下文章
在电脑上安了虚拟机后,整个系统会不会变得很慢?有没有解决方案?