问题描述:
装完Docker Desktop以后,Docker Engine stopped状态。看日志(l路径:%LOCALAPPDATA%\Docker\)发现是WSL报错。
解决办法:
(1)注销所有 WSL 发行版
powershell
wsl -l -v # 查看目前wsl有哪些实例,然后用--unregister注销 wsl --unregister Ubuntu # 替换为你的发行版名称(如 Ubuntu-22.04) wsl --unregister docker-desktop wsl --unregister docker-desktop-data
(2)重置 WSL 默认版本
powershell
wsl --set-default-version 1 # 临时降级,确保清理彻底
(3)可选:手动删除残留文件
删除 WSL 相关文件夹:
-
%USERPROFILE%\AppData\Local\Packages\<DistroPackage>
(如CanonicalGroupLimited.Ubuntu*
) -
C:\Users\<你的用户名>\AppData\Local\Docker\wsl\
(Docker 相关)
2. 重新安装 WSL
(1)启用 WSL 功能
以管理员身份运行 PowerShell:
powershell
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
重启电脑使更改生效。
(2)安装 WSL2 内核更新
下载并安装官方 WSL2 内核更新包:
👉 Microsoft WSL2 内核下载页面
(3)设置 WSL2 为默认版本
powershell
wsl --set-default-version 2
问题描述:
docker pull的时候报各种网络错误。
解决办法:
原因是墙导致的。
试了切换国内的registry,改daemon.json文件,但根本没用。
最后通过挂代理的方式解决。如下图: