安装docker,页面提示WSL needs updating

附上WSL文档Windows Subsystem for Linux 文档 | Microsoft Learn

整个更新过程分为两部分:1. 启用WSL功能;2. 将WSL 1升级到WSL 2并更新内核。

步骤 1:启用“Windows Subsystem for Linux”和“虚拟机平台”功能
  1. 管理员身份打开 PowerShell(在开始菜单上右键点击,选择“Windows PowerShell (管理员)”)。

  2. 依次执行以下两条命令:

    dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
    
    dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
  3. 非常重要: 执行完以上命令后,重启电脑

步骤 2:下载并安装 WSL 2 Linux 内核更新包
  1. 访问微软官方下载页面,下载最新的内核更新包:
    Manual installation steps for older versions of WSL | Microsoft Learn

  2. 运行下载好的 wsl_update_x64.msi 文件,按照提示完成安装。

步骤 3:将 WSL 2 设置为默认版本
  1. 电脑重启且内核安装完成后,再次以管理员身份打开 PowerShell

  2. 运行以下命令,将 WSL 的默认版本设置为 2:

    wsl --set-default-version 2
步骤 4:确认 Docker Desktop 配置
  1. 右键点击任务栏的 Docker 图标,选择 Settings

  2. 确保在 General 选项中,Use the WSL 2 based engine 已被勾选。

  3. 在 Resources -> WSL Integration 选项中,确保已启用您希望 Docker 使用的 Linux 发行版(例如 Ubuntu)。

步骤 5:验证是否成功

完成以上所有步骤后,再次尝试启动 Docker Desktop。它应该可以正常启动了。

您也可以在 PowerShell 或命令提示符中运行以下命令来验证 WSL 版本:

wsl --list --verbose

此命令会列出所有已安装的 Linux 发行版及其对应的 WSL 版本。请确保它们的版本都是 2

问题:

执行wsl --list --verbose报错

这是因为Docker Desktop 依赖于这个 Linux 发行版来作为其运行的后端引擎。

解决方案:

方法一:通过 Microsoft Store 安装(推荐,最简单,国内用户可能访问不了可以用方法二)

这是最直接的方法,正如错误提示所建议的。

  1. 打开 Microsoft Store (微软商店)。

  2. 在搜索框中搜索 Ubuntu

  3. 在搜索结果中,选择 Ubuntu(通常是最新版本,如 22.04 LTS),不要选择 “Ubuntu on Windows” 那个旧的。

  4. 点击“获取”或“安装”按钮。安装过程不需要您输入任何命令,全部自动完成。

方法二:手动下载并安装 Linux 发行版

微软官方提供了离线安装包,我们可以绕过 Microsoft Store 直接安装。

步骤 1:下载官方离线包

这里以最流行的 Ubuntu 为例(推荐使用最新的 LTS 版本,如 22.04)。

  1. 打开浏览器,访问 微软官方 WSL 发行版下载目录
    Manual installation steps for older versions of WSL | Microsoft Learn

  2. 在页面中找到 "Ubuntu" 的下载链接(通常是一个 .appx 或 .msixbundle 文件),点击下载。

步骤 2:安装下载的发行版
  1. 找到下载好的文件(例如 Ubuntu_2204.1.7.0_x64.appx)。

  2. 将其重命名,把文件后缀从 .appx 改为 .zip

    • 如果文件后缀是 .msixbundle,同样改为 .zip

  3. 右键点击这个 .zip 文件,选择“全部解压缩”。

  4. 解压后会得到一个文件夹,进入该文件夹。

  5. 在里面找到名为 ubuntu.exe (或者 ubuntu2204.exe)的文件,双击运行它

  6. 运行后,会打开一个命令行窗口,提示你设置用户名密码

    • 注意:输入密码时,屏幕上不会有任何显示(如 * 号),这是正常的,盲输完成后按回车即可。

    • 这个用户名和密码是将来你在这个 Linux 子系统里执行 sudo 命令时需要的,请务必记住。

步骤 3:验证安装并设置为 WSL 2
  1. 安装完成后,再次以管理员身份打开 PowerShell

  2. 运行之前用过的命令,现在你应该能看到已安装的发行版了:

    powershell

    wsl -l -v
  3. 确保你的 Ubuntu 发行版使用的是 WSL 2。如果其 VERSION 列显示为 1,请使用以下命令将其设置为 2(将 Ubuntu-22.04 替换为你的发行版名称):

    powershell

    wsl --set-version Ubuntu-22.04 2
    • 这个过程可能需要几分钟,系统会进行格式转换。

  4. 你也可以设置 WSL 2 为所有新发行版的默认版本:

    powershell

    wsl --set-default-version 2
步骤 4:启动 Docker Desktop

完成以上所有步骤后,再次尝试启动 Docker Desktop。现在它检测到了可用的 WSL 2 和 Linux 发行版,应该能够正常启动了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值