我已经安装了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功能中禁用Hyper-V 在BIOS中关闭和打开虚拟化 重新登录windows,启用Hyper-V。我被提示有Hyper-V的更新,我做了更新。当出现提示时重新启动。 它工作!

其他回答

您可以尝试手动启用Hyper-V,并手动创建和运行Hyper-V虚拟机吗?细节:

https://docs.docker.com/docker-for-windows/#/what-to-know-before-you-install https://msdn.microsoft.com/en-us/virtualization/hyperv_on_windows/quick_start/walkthrough_install

以下是我的工作方案,请按照以下步骤进行

以管理员身份打开PowerShell或以管理员身份打开CMD提示符 在PowerShell-> bcdedit /set hypervisorlaunchtype auto . sh中执行该命令 现在重新启动系统并重试。

欢呼。

它帮助了我:

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

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

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.

如果上述方案不奏效,那么 进入命令提示符并输入systeminfo。检查Hyper-V要求部分。 如果列出的所有Hyper-V需求的值都为Yes,则系统可以运行Hyper-V角色。 在我的情况下,固件中的虚拟化启用是NO。 因此,我在系统bios中启用了虚拟化技术,在我的惠普笔记本电脑中启用了虚拟化技术。 请按此连结启用: https://2nwiki.2n.cz/pages/viewpage.action?pageId=75202968