我已经安装了Docker,当我运行GUI时,我得到这个错误:

硬件辅助虚拟化和数据执行保护必须 在BIOS中启用

似乎是一个bug,因为Docker在命令行中工作得很好,但我想知道是否有人知道为什么会发生这种情况?

在你问之前,是的,我已经在BIOS中启用了虚拟化,并且英特尔处理器识别实用程序确认它已被激活。Docker, Docker -machine和Docker -compose都可以在命令行中工作,Virtualbox可以,在Debian或Ubuntu虚拟机中运行Docker也可以。

GUI有个奇怪的问题。

我的规格:

Windows 10 Pro x64周年纪念版 英特尔酷睿i5-6300HQ @ 2.30GHz


当前回答

在我的情况下,我不得不卸载hyper-v,重新启动pc,并再次运行docker。

其他回答

@Silverstorm

我在BIOS中安装了Hyperv并启用了虚拟化。

但是A方案并不适合我。

然而,解决方案B非常有效。

解决方案B(如果Hyper-V功能已经启用但不工作)

使用

Bcdedit /set hypervisor启动类型auto 现在重新启动系统并重试。

试试以下步骤

在powershell中执行该命令 Bcdedit /set hypervisor启动类型 汽车 重启电脑 现在在cmd行中尝试docker—version

它帮助了我:

禁用组件虚拟机平台和Windows子系统for Linux 重新启动 使组件 重新启动

我认为我的问题与WSL2的beta版本有关。 我尝试安装android子系统。但是我前一段时间已经删除了。所以只剩下beta WSL2了

在我的情况下,我不得不卸载hyper-v,重新启动pc,并再次运行docker。

尝试在PowerShell(启用管理员):

Enable-WindowsOptionalFeature –Online -FeatureName Microsoft-Hyper-V –All -NoRestart

这将在没有管理工具的情况下安装HyperVisor,然后您可以在此之后运行Docker。