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

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

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

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

GUI有个奇怪的问题。

我的规格:

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


当前回答

遵循以下步骤:

进入:windows设置=>更新和安全=>恢复=>高级启动,然后单击:立即重新启动。 故障排除=> Advanced Option => UEFI Firmware =>重启。 进入“Bios => configuration => Virtualization technology =>”。 保存更改,它就会工作。

其他回答

I have tried many suggestions above but docker keeps complaining about hardware assisted virtualization error. Virtualization is enabled in BIOS, and also Hyper-V is installed and enabled. After a few try and errors, I eventually downloaded coreinfo tool and found out that Hypervisor was not actually enabled. Using ISE (64 bit) as admin and run command from above Solution B and that enables Hypervisor successfully (checked via coreinfo -v again). After restart, docker is now running successfully.

在我的例子中,我必须在BIOS设置中启用虚拟化。

重新启动电脑 当你在“重启”屏幕上按下这些键中的任何一个,你进入windows中的bios设置:esc, f1, f2, f3, f4, f8或delete 对于基于英特尔的系统: 按f7(高级模式) 转到高级 注册会计师的配置 支持虚拟化

在以上所有步骤之后,它终于工作了:-)

在我的情况下,即使我使用了上面提到的所有解决方案,但没有一个对我有效。所以我决定卸载docker,重新安装。

现在在这个过程中,我注意到我在之前的安装中没有勾选使用Windows容器而不是Linux容器(这可以在安装后更改),这就是为什么我得到了上面的问题,解决方案仍然没有解决它。所以确保在运行desktop docker之前检查它,或者通过检查这个选项卸载它并重新安装它。

如果一切正常,BIOS选项我只是强制禁用和启用所有HyperV功能,这解决了我的问题 - - - cmd 禁用- windowsoptionalfeature -Online -FeatureName Microsoft-Hyper-V-All ——重启 Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All

@Silverstorm

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

但是A方案并不适合我。

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

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

使用

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