Docker WSL 2 安装不完整

Docker WSL 2 安装不完整

替换后Windows 10 上的 Docker 桌面使用较新的版本,单击启动它并出现以下错误

WSL 2 安装不完整

WSL 2 安装不完整

WSL 2 Linux 内核现在使用单独的 MSI 更新包进行安装。请单击链接并按照说明安装内核更新:

https://aka.ms/wsl2kernel

安装Linux内核后按重启

默认情况下,在“设置”>“常规”中,已经选择了“使用基于 WSL 2 的引擎”选项。这可能是因为我本地已经有 Ubuntu 18.04 LTS。

如果我转到 Docker 桌面设置>资源> WSL 集成

Docker WSL 集成

您没有任何 WSL 2 发行版。请将 WSL 1 发行版转换为 WSL 2,或安装新的发行版,它将显示在此处。

如何让 Docker 运行?

答案1

有两种方法可以让它工作

  1. 使用基于 WSL 2 的引擎。
  2. 不使用基于 WSL 2 的引擎。

1-使用基于 WSL 2 的引擎

这一页在“下载Linux内核更新包”下。

更新 Linux 内核包

然后 Docker 就可以正常启动了

Docker 正在运行


2-不使用基于 WSL 2 的引擎

如果目标只是让 Docker 运行,只需取消选中“使用基于 WSL 2 的引擎”复选框即可。这可能会出现以下错误

未启用所需的 Windows 功能:Hyper-V。

未启用所需的 Windows 功能:Hyper-V。

切换到基于 WSL 2 的引擎?

要启用 Hyper-V,请执行以下操作: https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/quick-start/enable-hyper-v

因此,在 PowerShell 7 中运行命令

启用-WindowsOptionalFeature-Online-FeatureName Microsoft-Hyper-V-All

Windows 10 中的 Hyper-V

这需要重启计算机才能完成操作。然后,再次启动 Docker 时,您会收到以下错误

Docker 初始化失败

Docker 初始化失败

发生了一个或多个错误。

最终,只需再次单击“启动”,Docker 就会开始运行

Docker 正在运行

docker 版本

答案2

我遇到了同样的错误。我只需通过执行以下命令来更新 WSL:

wsl --update

答案3

按照以下指南操作此链接

您需要使用以下命令为 Linux 启用 Windows 子系统:

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

这使得 WSL1 成为可能。

相关内容