Win10中Vmware和Docker冲突解决
1.为何冲突?
Vmware自带虚拟化内核,但是在win10中Docker的工作需要依赖Hyper-V,本质上是Hyper-v和Vmware内核之间的冲突**,毕竟二者提供了相同的功能。
PS:安装Hyper-V服务其实也不是一个简单的事情,尤其是当你的系统是win10家庭版的时候,需要多走点流程,但是也很简单:
pushd "%~dp0"
dir /b %SystemRoot%\servicing\Packages\*Hyper-V*.mum >hyper-v.txt
for /f %%i in ('findstr /i . hyper-v.txt 2^>nul') do dism /online /norestart /add-package:"%SystemRoot%\servicing\Packages\%%i"
del hyper-v.txt
Dism /online /enable-feature /featurename:Microsoft-Hyper-V-All /LimitAccess /ALL
命名为XXX.cmd即可。点击运行,剩下的就是机器要求重启,按它的需求来就行了,在windows功能里看到下面这个图就行:
2.如何解决
很恶心,在课程实验狂轰乱炸之下,我需要一会在VMware里、一会在docker里进行实验,冲突无法避免。
直接贴解决方案:
1、当你想用VMware
bcdedit /set hypervisorlaunchtype off
2、当你想用Docker
bcdedit /set hypervisorlaunchtype auto
每次切换之后必须进行reboot。
这个方法下系统的功能和服务都不要管,也不要尝试手动去切换:
启动docker时服务里其实有以上服务就行了。