强制 Windows 版 docker 使用 Hyper-V 而不是 WSL2

问题描述 投票:0回答:2

从2.3.0.2版本开始,docker桌面可以安装在Windows 10家庭版上,因为它可以使用Windows功能WSL2而不是Hyper-V。 Windows 10 家庭版未安装 Hyper-V。

我仅限于 Windows 10 家庭版,并且我正在从事的项目无法使用 WSL2 作为 docker-for-windows 后端;仅适用于 Hyper-V。我使用下面的批处理脚本在 Windows 10 Home 上安装了 Hyper-V,但无法在 docker 中从 WSL 切换到 Hyper-V。

该选项呈灰色。

如何强制 docker 在 Windows 10 Home 上使用 Hyper-V 而不是 WSL2?

在 Windows Home 上安装 Hyper-V 的批处理脚本:

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
docker docker-for-windows docker-desktop
2个回答
0
投票

更新:

要在家庭版中使用Hyper-V安装Docker for Windows,您可能需要通过编辑注册表将系统伪装成专业版。

REG ADD "HKEY_LOCAL_MACHINE\software\Microsoft\Windows NT\CurrentVersion" /v EditionId /T REG_EXPAND_SZ /d Professional /F

(来自一些中文论坛,没有出处)


自2023年起,通过OP提到的方法安装Docker for Windows可以在系统重启后仍然存在。

在 Windows 11 22H2 家庭版(中国)上测试,Docker for Windows 版本为 4.24.2(124339)


-1
投票

这可能是由于 docker 软件更新所致,即使之前的 Docker 版本最初启用了 Hyper-V,docker 也会自动使用 WSL。

要解决此问题:
卸载并重新安装 docker,并按照 Hyper-V 使用过程进行操作。

© www.soinside.com 2019 - 2024. All rights reserved.