分享

安装docker报错Hardware assisted virtualization and data execution protection must be enabled in the BIOS

 无色非非想 2020-05-08

win10安装docker时报错Hardware assisted virtualization and data execution protection must be enabled in the BIOS,这就很奇怪了,明明是在blos已经启用了虚拟硬件了,怎么还会报错呢?

检查是否启用了虚拟化

重启电脑进入blos界面,确实开启了虚拟化,开机后打开进程管理器,也确实生效了。
可以看到虚拟化是已启用的状态

检查Hyper-V Manager是否安装以及开启

打开windows的【启用或关闭windows功能】,查看是否安装Hyper-V,没选的勾选,我这已经是选了,然而还是不行,郁闷
安装相关功能

设置Hyper-V管理器

按照官方的错误说明指引,来到了设置管理器这一步骤,这一步骤官方说“要求通过检查Hyper-V管理器右侧“操作”选项卡上的“虚拟交换机管理器”,确保已启用DockerNAT。”
打开管理器
进入虚拟交换机管理器。
可以看到是有的
然后官方文档是这样说的:“Set up an external network switch. If you plan at any point to use Docker Machine to set up multiple local VMs, you need this anyway, as described in the topic on the Hyper-V driver for Docker Machine. You can replace DockerNAT with this switch.”,意思就是要设置成外部网络。木问题,设置就设置,然而设置之后,再打开docker,docker直接又还原回去了…

Cleanup

官方文档又说了:“If previous steps fail to solve the problems, follow steps on the Cleanup README“,就是要清除某些网络设置信息。详情请见Readme
我按文档的步骤执行脚本,然而并没有什么卵用,反而还报了另外一个错误。

解决方法

其实我这个应该算是 Hyper-V异常导致的,所以要么禁用之后再启用,要么直接运行以下命令,算是重启这个服务:

bcdedit /set hypervisorlaunchtype auto

之后再重启电脑就ok了,可以愉快地开始docker旅程了。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多