Docker报错
原因分析:
问题出在Hyper-V已禁用或Hypervisor代理未运行。
(如果Hyper-V功能已启用但不起作用)
hyper-v组件开启后,需确保其守护进程自动运行(我问题出在这里,守护进程没有运行),可通过管理员身份命令启动:
打开文件夹,C:\Windows\System32;查找到cmd.exe,右键选择以管理员身份运行
bcdedit /set hypervisorlaunchtype auto
重启电脑,启动docker desktop,即可正常运行
但是docker可以运行之后,虚拟机就打不开出现报错
Operation inconsistent with current state
根据链接提示,打开一个页面,里面有提示怎么操作,我英译中翻译了一下对照操作:
禁用Hyper-V的步骤:
注意:
作为安全措施,建议备份数据并设置系统还原点。以下功能将不再工作,一旦Hyper-V被禁用
•凭据保护/设备保护
•windows沙盒
•虚拟机平台
•wsl2
•hyper - v
检查VBS是否开启:
1. 在Windows 10操作系统中打开“msinfo32/system information”
2. 在右边页面的“系统摘要”下,向下滚动到“基于虚拟化的安全性和”确保该值设置为“未启用”。
3.如果该值被设置为enabled,按照下面给出的步骤禁用Hyper-V。
1. Turn Off Hyper-V
- Go to "Turn Windows features on or off"
- Make sure Hyper-v is not ticked.
- If it is Ticked, untick it and click "Ok"
1. 关闭Hyper-V
1. 转到“打开或关闭Windows功能”
2. 确保Hyper-v没有勾选。
3. 如果是勾选,取消勾选并点击“确定”。
2. 以管理员身份打开命令提示窗口
1. 执行命令"bcdedit /enum {current} "
2. 请记下虚拟机管理程序的启动类型,以防需要进行还原
3. 执行" bcdedit /set hypervisorlaunchtype off "命令关闭虚拟化环境。命令执行完成后,请关闭命令提示符并重启系统。
现在我们应该可以在工作站中启动虚拟机了。
关闭基于虚拟化的安全性的过程:
可以按照以下步骤关闭Windows 10家庭和专业版的基于虚拟化的安全性:
微软Windows 10 Pro及以上版本:
1. 编辑组策略(gpedit)
2. 进入“本地计算机策略>计算机配置>管理模板>系统”
3. 双击右边的Device Guard打开。
4. 双击“打开虚拟化安全”,打开一个新窗口
5. 它会是“Not Configured”,选择“Disable”,然后点击“Ok”
6. 关闭组策略编辑器。
7. 重启系统
微软视窗10家庭版:
注意:此过程将修改Windows注册表。在进行任何注册表修改之前,请确保拥有注册表和虚拟机的当前有效备份。有关备份和恢复注册表的更多信息,请参阅Microsoft知识库文章256986。
1. 打开注册表编辑器
2. 2 .进入“HKEY_LOCAL_MACHINE > SYSTEM > CurrentControlSet > Control > DeviceGuard”目录
3. 在右边,写一个新键
a.右键单击“>新建> DWORD(32位)值”
b.将此值命名为EnableVirtualizationBasedSecurity
默认值为0。双击,确认该值
4. 2 .执行“HKEY_LOCAL_MACHINE > SYSTEM > CurrentControlSet > Control > Lsa”
5. 在右边,写一个新键
a.右键单击“>新建> DWORD(32位)值”
b.将此值命名为“LsaCfgFlags” 文章来源:https://www.toymoban.com/news/detail-709253.html
默认值为0。双击,确认该值文章来源地址https://www.toymoban.com/news/detail-709253.html
到了这里,关于虚拟机和docker不兼容报错,各自的解决办法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!