我已经安装了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,您可以在安装过程中选择“使用Hyper-V”直接安装docker。 但是,如果您的Windows没有此支持,请遵循下面的解决方案。


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

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

我的规格:

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

其他回答

打开任务管理器并单击性能选项卡。如果禁用了虚拟化,您需要按照以下说明启用它:https://blogs.technet.microsoft.com/canitpro/2015/09/08/step-by-step-enabling-hyper-v-for-use-on-windows-10/

2023年1月10日,我遇到了同样的问题。在那之后,我取消了Linux和Hyper-v的windows子系统,重新启动我的电脑。然后我打开docker桌面,当它通知我打开Hyper-v时,我就这样做了,在那之后,它工作得很好。

I don't know how this works, and I don't even know what these commands do, I don't know what is hypervisor or what it does that it interferes with Docker, and I don't know what the nx means in the second command which it is apparently turning it off. I had these commands saved on my computer as "Turn VT-x off" (yet another thing that I don't know what it is, I think it's related to Virtualization Technology which I don't know what that does/is either). But nothing else worked for me (including the accepted answer (which I tested all of it's solutions) and other upvoted answers, although I didn't read all of them), except running both of these. It is completely up to you to test these, I do not guarantee any fixes to you, but it worked for me, I put it in here because I thought it might be helpful for someone else like me who also didn't find other answers to be that helpful:

bcdedit /set hypervisorlaunchtype auto

bcdedit /set nx AlwaysOff

shutdown /s

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

在AMD机器上,你必须更改的BIOS设置可能被称为SVM模式。我的Gigabyte X570板子就是这种情况。

BIOS中的设置如下:高级模式—> tweak—>高级CPU设置—>支持向量机模式(设置为enabled)

AMD-V是安全虚拟机模式(SVM)的重命名商标。