我已经安装了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子系统for Linux 重新启动 使组件 重新启动

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

其他回答

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

如果启用了所描述的特性,则问题在于Hyper-V被禁用或Hypervisor代理未运行。

解决方案A(如果Hyper-V完全禁用或未安装)

以管理员身份打开PowerShell 启用Hyper-V dism.exe /Online /Enable-Feature:Microsoft-Hyper-V /All

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

使用

bcdedit /set hypervisorlaunchtype auto

现在重新启动系统并重试。

解决方案C

如果问题仍然存在,可能是系统上的Hyper-V损坏了,所以

进入控制面板->[程序]-> [Windows功能],完全取消选中所有Hyper-V相关组件。重新启动系统。 再次启用Hyper-V。重新启动。

注1:

Hyper-V needs hardware virtualization as prerequisite. Make sure your PC supports it, if yes and still won't work, there is the possibility your BIOS is not configured correctly and this feature is disabled. In this case, check, enable it and try again. The virtualization features could be reported under different names according the platform used (e.g if you don't see any option that uses virtualization label explicitly, on AMD you have to check SVM feature state, on Intel the VT-x feature state).

注2:

Hyper-V只能安装某些版本,例如:

Windows 10企业版;Windows 10 Professional;Windows 10教育。

Hyper-V不能安装在便宜的或移动的Windows版本上,例如:

Windows 10家庭版;Windows 10 Mobile;Windows 10移动企业。

我卸载了英特尔HAXM和VirtualBox, Docker现在运行

注意:如果您的Windows版本支持Hyper-V,您可以在安装过程中选择“使用Hyper-V”直接安装docker。 但是,如果您的Windows没有此支持,请遵循下面的解决方案。


我也遇到过类似的问题。 我已经在bios设置中启用了英特尔虚拟技术。

然后我从这里更新了Linux内核。 这个方法奏效了

我的规格:

Microsoft Windows 10 Home x64单语言 Intel(R) Core(TM) i5-7300 @ 2.50GHz

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