VMWare与Hyper-V共存之虚拟机中Docker无法启动的错误解决方案

VMWare与Hyper-V共存之虚拟机中Docker无法启动的错误解决方案

首先,Windows10 21H1版本下VMWare16与HyperV可以共存,并且都正常运行启动,至于如何共存,下面贴一段代码:

::%cd%代表的是执行文件的当前目录,强调bat是在哪里启动的     ->盘符展开后是可改变的
::%~dp0代表的是bat文件所在的文件目录,强调bat的文件位置     ->盘符展开后是不可改变的
pushd "%~dp0"
::通过通配符获取文件名到hypervisorplatform.txt
dir /b %SystemRoot%\servicing\Packages\*HypervisorPlatform*.mum >hypervisorplatform.txt
::循环+拼接安装命令
::/quiet表示静默安装,/norestart表示无需重启(这些参数可酌情使用)
for /f %%i in ('findstr /i . hypervisorplatform.txt 2^>nul') do dism /online /norestart /add-package:"%SystemRoot%\servicing\Packages\%%i"
::删除txt
del hypervisorplatform.txt
::启用
Dism /online /enable-feature /featurename:HypervisorPlatform /LimitAccess /ALL
pause 

拷贝以上代码,复制到一个txt文件,并将文件改名为:run.bat,右键,管理员运行…
此处要注意,需要win10最新版本,并且VMware16以上

宿主机已开启Hyper-V,至于怎么开启,则不详述;
宿主机可以正常运行Docker;
Vmware可以启动虚拟机。
但是,在虚拟机中安装Docker后,docker不能运行,提示Hyper-V部分服务未启动
至于宿主机可以运行Docker,为啥还要在虚拟机运行Docker,此处不详述。
后面就是要解决,要在虚拟机中运行Docker…
如果不需要运行Docker,后面就不要看了。。。

如果不开启Hyper-V,是可以通过处理器的VT-X的方式是vmware虚拟机运行Docker;
在这里插入图片描述
但是开启了Hyper-V后,vmware无法开启VT-X;
在这里插入图片描述
在这里插入图片描述
其实原因就是,不能嵌套虚拟化功能,要虚拟机中还要虚拟化,这就是嵌套虚拟

1、Hyper-V中安装虚拟机(详细操作请自行搜索);
在这里插入图片描述
2、启动PowerShell
在这里插入图片描述
3、Get-vm
在这里插入图片描述
4、 Get-VMProcessor -VMName Server2019 | fl
**注意:**server2019是你的Hyper-V中安装的虚拟机名称
在这里插入图片描述
如果没有开启过,就是false状态。
5、 Set-VMProcessor -ExposeVirtualizationExtensions $true -VMName Server2019
在这里插入图片描述
显示未True就是已经开启嵌套虚拟化了,但是这个功能只针对Hyper-V虚拟机,所以,为什么要装虚拟机到Hyper-V中,就是这个原因,至于vmware中的,不知到如何解决。
6、如果内存大,启动Docker就没问题了,如果宿主机内存下,可能还需要设置以下Docker设置,否则可能提示出错。
在这里插入图片描述
7、虚拟机中的Docker,按以下图片路径设置合适即可(例如将2048改未1024):
在这里插入图片描述
至此,虚拟机中的Docker正常启动运行。
虚拟机中虚拟化,更消耗内存,尽量在内存大的机器上运行吧,有条件,还要啥自行车,不是吗!!!
欢迎留言交流!

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 服务器 VMware Workstation 是一种用于在桌面操作系统上创建和运行虚拟机的软件解决方案Hyper-V 是微软 Windows Server 操作系统的一个角色,用于管理和运行虚拟机。由于 VMware Workstation 和 Hyper-V 是不同的虚拟化平台,它们之间存在不兼容的问题。 要在安装或运行 VMware Workstation 时解决这个问题,需要先从系统移除 Hyper-V 角色。以下是解决方案的步骤: 1. 打开控制面板,并点击“程序”。 2. 在程序页面上,点击“卸载一个程序”。 3. 在卸载或更改程序页面上,点击“打开或关闭 Windows 功能”。 4. 在 Windows 功能页面上,找到“Hyper-V”选项,并取消选。 5. 点击“确定”,系统将开始卸载 Hyper-V 角色。 6. 完成卸载后,重新启动计算机。 完成以上步骤后,Hyper-V 角色将从系统移除。现在,您可以安装和运行 VMware Workstation 了,因为与 Hyper-V 不再存在冲突。 需要注意的是,移除 Hyper-V 角色后,将无法再使用 Hyper-V 运行虚拟机。如果您需要使用 Hyper-V,可以在需要时重新安装该角色。 ### 回答2: 服务器 vmware workstation 与 hyper-v 不兼容的原因是它们两者都是虚拟化技术,在同一台机器上同时使用可能会产生冲突。为了解决这个问题,我们需要首先从系统移除 hyper-v 角色。 要移除Hyper-V角色,首先打开“控制面板”,然后点击“程序和功能”选项。在弹出的窗口,点击“启用或关闭Windows功能”链接。 在Windows功能窗口,你会看到一个名为“Hyper-V”的选项。将其取消选,然后点击“确定”按钮。这将开始移除该功能。 系统会提示你重新启动计算机以完成移除过程。选择“是”并等待计算机重新启动。 一旦计算机重新启动后,Hyper-V角色就已成功从系统移除了。此时,你可以安装和配置vmware workstation而不会与冲突。 请注意,在移除Hyper-V角色之后,你将不再能够使用Hyper-V功能。如果你以后需要使用Hyper-V,你可以通过重复上述步骤再次启用该功能。 总结起来,为了使服务器的vmware workstation与hyper-v兼容,我们需要先移除系统hyper-v角色。这样就可以安装和配置vmware workstation而不会发生冲突。请确保在移除Hyper-V之前备份所有重要数据,并在完成移除后重新启动计算机。 ### 回答3: 服务器VMware Workstation与Hyper-V是两种虚拟化软件,它们在同一台系统上同时运行时会出现冲突,不兼容的情况。因此,在使用VMware Workstation之前,我们必须从系统移除Hyper-V角色。 移除Hyper-V角色的步骤如下: 1. 打开“控制面板”并选择“程序”或“程序和功能”。 2. 在列表找到“Hyper-V”并将其选。 3. 点击“卸载/更改”按钮。 4. 稍等片刻,系统将开始卸载Hyper-V角色并在此过程可能需要您确认一些选项。 5. 完成卸载后,您将需要重新启动计算机以使更改生效。 一旦Hyper-V角色成功从系统移除,您就可以安装和运行VMware Workstation了。请注意,移除Hyper-V角色可能会对其他依赖于Hyper-V的软件或服务造成影响,例如Docker等。因此,在进行更改之前,建议您评估系统上是否有其他使用Hyper-V的应用程序。 通过移除Hyper-V角色,您可以确保VMware Workstation在您的系统上顺利运行,从而获得更好的虚拟化体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值