记录:老电脑安装 Docker 4.40 不支持 WSL 2 时这样处理

目录

总结

解决方案:

[1、先卸载已损坏的 WSL 组件:](#1、先卸载已损坏的 WSL 组件:)

[2、仅启用 WSL 1 功能(不启用虚拟机平台,避免触发 WSL 2 依赖)继续在管理员 PowerShell 中执行:](#2、仅启用 WSL 1 功能(不启用虚拟机平台,避免触发 WSL 2 依赖)继续在管理员 PowerShell 中执行:)

[3、设置 WSL 默认版本为 1,继续在管理员 PowerShell 中执行:](#3、设置 WSL 默认版本为 1,继续在管理员 PowerShell 中执行:)

[4、安装:安装时的关键配置:取消勾选 "Use the WSL 2 based engine"(这是适配 WSL 1 的核心,若勾选会因 CPU 不支持而安装失败 / 启动异常)。](#4、安装:安装时的关键配置:取消勾选 “Use the WSL 2 based engine”(这是适配 WSL 1 的核心,若勾选会因 CPU 不支持而安装失败 / 启动异常)。)

[5、安装完成需要手动设置磁盘镜像路径:"Disk image location ":](#5、安装完成需要手动设置磁盘镜像路径:“Disk image location ”:)


台式机 i5 3470 cpu ,win10 19044 版,但是更新 wsl 时提示说是 CPU 不支持,Bios 中 Vtx 已设为 Enable,安装 docker 4.40 后,wsl 更新失败:

复制代码
PS C:\>wsl --update 
正在检查更新... 
正在下载更新... 
正在安装更新... 
这个处理器类型不支持该安装程序包。请与产品供应商联系。

总结

  1. 核心原因:i5 3470(三代酷睿)缺少 EPT 硬件特性,不支持 WSL 2
  2. 最优选择:启用 WSL 1,无需额外成本,可满足常规 Linux / 开发需求

解决方案:

放弃 WSL 2,启用并使用 WSL 1(最可行,无需硬件 / 系统升级)

1、先卸载已损坏的 WSL 组件:

管理员身份打开 PowerShell,执行以下命令:

复制代码
# 卸载WSL相关组件
wsl --unregister --all
dism.exe /online /disable-feature /featurename:Microsoft-Windows-Subsystem-Linux
dism.exe /online /disable-feature /featurename:VirtualMachinePlatform

2、**仅启用 WSL 1 功能(不启用虚拟机平台,避免触发 WSL 2 依赖)**继续在管理员 PowerShell 中执行:

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

3、设置 WSL 默认版本为 1,继续在管理员 PowerShell 中执行:

复制代码
wsl --set-default-version 1

4、安装:安装时的关键配置:取消勾选 "Use the WSL 2 based engine"(这是适配 WSL 1 的核心,若勾选会因 CPU 不支持而安装失败 / 启动异常)。

5、安装完成需要手动设置磁盘镜像路径:"Disk image location ":

a、操作前先停止 Docker 相关服务,修改磁盘镜像路径前,必须确保 Docker 完全停止运行(避免镜像文件被占用导致移动失败或文件损坏):

  1. 右键点击任务栏右下角 Docker 鲸鱼图标;
  2. 选择 Quit Docker Desktop(退出 Docker 桌面端);
  3. 等待状态栏 Docker 图标消失,确认 Docker 所有进程已终止(若卡住,可通过任务管理器结束 Docker.exe 相关进程)。

b、通过 Docker Desktop 图形界面修改"Disk image location "步骤如下:

  1. **重新打开 Docker Desktop(此时容器未运行,仅进入设置界面)**双击桌面 Docker 快捷方式,等待 Docker 启动(无需等待容器运行,只要能打开设置界面即可)。

  2. 找到 Disk image location 配置项

    • 点击界面右上角 ⚙️ Settings(设置);
    • 左侧菜单栏根据你的容器模式选择对应选项:在 ResourcesAdvanced 中找到 Disk image location
    • 找到后可看到当前已配置的存储路径,右侧有 Browse(浏览)按钮。
  3. 选择新的存储路径并应用

    • 点击 Browse 按钮,在弹出的窗口中选择你想要迁移到的新文件夹(建议提前新建专门的文件夹,如 D:\Docker\DiskImage,方便管理);
    • 选择完成后,点击 Apply & Restart(应用并重启);
    • Docker 会自动执行「停止服务 → 移动磁盘镜像文件 → 更新配置 → 重启服务」的全流程,无需手动复制文件,耐心等待即可(镜像文件体积较大,移动时间取决于文件大小和磁盘速度)。
  4. 验证修改成功

    • Docker 重启后,再次进入对应设置界面,查看 Disk image location 是否显示为新路径;
    • 执行 docker psdocker compose ps,确认容器能正常运行,说明迁移成功。

PS:安装时指定镜像路径对 WSL 1+ linux 模式无用,但可以指定主程序安装路径:

复制代码
:: 在 Cmd 中执行下列命令安装 docker ,其中 D:\Program Files\Docker 为指定安装路径,E:\Studio\docker\images 为容器存储路径
 
start /w "" "Docker Desktop Installer 4.40.0 (187762).exe" install -accept-license --installation-dir="D:\Program Files\Docker" --wsl-default-data-root="E:\Studio\docker\images\data" --windows-containers-default-data-root="E:\Studio\docker\images"

此记!

相关推荐
宋辰轩17 小时前
Docker导致的wsl2崩溃问题
docker·wsl2
码农阿豪17 小时前
Ubuntu部署GodoOS:Docker搭建Web办公桌面并实现远程访问
前端·ubuntu·docker
要开心吖ZSH18 小时前
测试环境 K8s 502 故障复盘:被 ClusterIP 表象误导,最终定位 kube-proxy 规则缺失
云原生·容器·kubernetes·k8s·502 bad gateway·kube-proxy
纵道软件18 小时前
使用 Docker 构建自定义 SeaTunnel Web 服务镜像
前端·docker·容器
AAA@峥2 天前
K8s 流量入口管理|Ingress 核心原理 + ingress-nginx 部署 + 生产实战案例合集
nginx·容器·kubernetes
GlueNa2SiO32 天前
10-Docker生产环境部署与K8s入门
笔记·学习·docker·容器·kubernetes
Kismet_nvi2 天前
《Kubernetes 网络进阶、调度策略与自动扩缩容实战精要》
网络·容器·kubernetes
蜀道山老天师2 天前
Zabbix监控Docker容器应用实践完整指南
linux·运维·docker·容器·zabbix
星空2 天前
WordPress在docker中部署
运维·docker·容器
wsad05322 天前
CentOS Stream 10 Docker 容器无法访问外网:xt_addrtype 内核模块缺失解决方法
linux·网络·docker·云原生·eureka·centos