【dify—2】docker重装
目录
第一部分 清空遗留文件
一、完整卸载 Docker Desktop
1. 通过控制面板卸载
2. 通过命令行强制卸载(若控制面板未生效)
二、手动清除残留文件
1. 删除关键目录(管理员权限运行CMD)
2. 清理 WSL2 残留
3. 清除 Hyper-V 虚拟网络(如果使用过)
三、清理注册表(高风险操作!)
四、重启后检查残留项
五、重置 WSL 内核
六、手动清除遗留文件
七、验证清理结果
八、重建干净环境(可选)
总结
1. WSL 虚拟硬盘文件(.vhdx)
2. Docker 专用残留
3. 注册表残留
🔍 最终验证方法
📝 操作总结
💡 提示
第二部分 重新安装
1、前置操作
(1) 手动创建目录(管理员权限)
(2) 设置目录权限
2、验证 WSL2 环境
(1) 确保 WSL2 已启用
(2) 检查 Hyper-V 和虚拟机平台
3、 执行安装命令
4、 安装后验证
(1)配置环境
(2)检查服务状态
(3)测试基础功能
5. 常见问题处理
8. 完整清理脚本(备用)
第一部分 清空遗留文件
一、完整卸载 Docker Desktop
1. 通过控制面板卸载
-
按
Win+R
输入appwiz.cpl
-
找到 Docker Desktop → 右键选择「卸载」
-
勾选 Also delete my settings and data(删除所有配置和数据)
2. 通过命令行强制卸载(若控制面板未生效)
# 使用 winget 卸载 winget uninstall Docker.DockerDesktop # 若失败则用安装包卸载(需替换实际版本号) msiexec /x {DockerDesktop安装包GUID} /qn
二、手动清除残留文件
1. 删除关键目录(管理员权限运行CMD)
rd /s /q "%ProgramFiles%Docker"
rd /s /q "%ProgramData%Docker"
rd /s /q "%LocalAppData%Docker"
rd /s /q "%AppData%Docker"
rd /s /q "%USERPROFILE%.docker"
2. 清理 WSL2 残留
①列出所有 WSL 发行版:
wsl --list --all
②删除 Docker 相关发行版:
# 清理 Docker 专用分发(若存在) wsl --unregister docker-desktop wsl --unregister docker-desktop-data # 清理其他可能的残留分发(按实际名称替换) wsl --unregister Ubuntu wsl --unregister Ubuntu-20.04
3. 清除 Hyper-V 虚拟网络(如果使用过)
# 删除所有 WSL 虚拟硬盘文件 del /f/s/q "%USERPROFILE%AppDataLocalPackagesCanonicalGroupLimited*LocalState*.vhdx" del /f/s/q "%USERPROFILE%AppDataLocalPackagesDocker*LocalState*.vhdx" # 强制删除 Docker 专用存储目录 rd /s /q "C:ProgramDataDockerDesktop" rd /s /q "%USERPROFILE%AppDataLocalDocker"
三、清理注册表(高风险操作!)
注意:操作前建议导出备份注册表(regedit → 文件 → 导出
)
-
按
Win+R
输入regedit
-
删除以下路径:
# WSL 通用配置 HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionLxss # Docker 相关配置 HKEY_CURRENT_USERSoftwareDocker Inc. HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionUninstallDocker Desktop
四、重启后检查残留项
-
打开资源管理器,检查以下路径是否已清空:
C:Program FilesDocker C:Users<你的用户名>.docker C:ProgramDataDocker
-
验证 WSL 状态:
wsl -l -v # 应不再显示 docker-desktop 相关发行版
五、重置 WSL 内核
# 关闭所有 WSL 实例
wsl --shutdown
# 重置 WSL 到初始状态
wsl --terminate
wsl --set-default-version 1
wsl --set-default-version 2
六、手动清除遗留文件
检查以下位置并删除相关文件夹:
# WSL 通用存储路径 rd /s /q "%USERPROFILE%AppDataLocalPackagesCanonicalGroupLimited*" rd /s /q "%USERPROFILE%AppDataLocalPackagesDocker*" # 系统级残留 rd /s /q "C:Program FilesWindowsAppsCanonicalGroupLimited*" rd /s /q "C:Program FilesWindowsAppsDocker*"
七、验证清理结果
# 检查所有分发状态(应显示无分发) wsl -l -v # 检查虚拟磁盘文件(应无 .vhdx 文件) dir /s "%LOCALAPPDATA%Packages*.vhdx"
八、重建干净环境(可选)
若需重新使用 WSL2:
# 安装默认分发(例如 Ubuntu) wsl --install -d Ubuntu # 验证新环境 wsl -l -v
总结
1. WSL 虚拟硬盘文件(.vhdx)
-
路径:
# 默认存储位置 %LOCALAPPDATA%PackagesCanonicalGroupLimited*LocalState*.vhdx D:wsl # 如果你曾自定义过安装路径
-
手动检查:
dir /s "%USERPROFILE%AppDataLocalPackages*.vhdx" dir /s "D:wsl*.vhdx" # 按实际路径替换
-
清理命令:
del /f/s/q "%USERPROFILE%AppDataLocalPackages*.vhdx"
2. Docker 专用残留
-
文件路径:
C:ProgramDataDockerDesktop %USERPROFILE%.docker
-
清理命令(管理员权限):
rd /s /q "C:ProgramDataDockerDesktop" rd /s /q "%USERPROFILE%.docker"
3. 注册表残留
-
关键路径:
HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionLxss HKEY_LOCAL_MACHINESOFTWAREDocker Inc.
-
操作建议:
使用regedit
手动删除上述路径(操作前务必导出备份)。
🔍 最终验证方法
1.检查磁盘空间
-
清理前后对比
C:
和D:
的剩余空间,观察是否有显著变化。
2.重新安装 WSL 分发测试
wsl --install -d Ubuntu
如果安装成功且运行正常,说明环境已干净。
📝 操作总结
步骤 | 内容 | 命令/操作 |
---|---|---|
1 | 确认 WSL 分发注册已清理 | wsl --list --all |
2 | 删除虚拟硬盘文件 | del /f/s/q "%USERPROFILE%...*.vhdx" |
3 | 清理 Docker 残留目录 | rd /s /q C:ProgramDataDockerDesktop |
4 | 检查注册表残留 | 手动删除 Lxss 和 Docker Inc. 项 |
5 | 验证环境 | 重新安装 Ubuntu 分发 |
💡 提示
如果后续重新安装 Docker 或 WSL 仍报错,可能是 系统权限 或 安全软件拦截 导致,可尝试:
-
以管理员身份运行所有命令。
-
暂时关闭杀毒软件/防火墙。
-
在安全模式下执行清理操作。
第二部分 重新安装
可参考docker部分:【dify+docker安装教程】-CSDN博客
1、前置操作
(1) 手动创建目录(管理员权限)
mkdir "D:Program FilesDocker" mkdir "D:Dockerwsl-data" mkdir "D:Dockerwindows-containers"
(2) 设置目录权限
-
右键点击每个目录 → 属性 → 安全 → 编辑
-
为当前用户添加 完全控制权限(避免安装时因权限不足失败)
2、验证 WSL2 环境
(1) 确保 WSL2 已启用
wsl --update wsl --set-default-version 2
(2) 检查 Hyper-V 和虚拟机平台
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart dism.exe /online /enable-feature /featurename:Hyper-V /all /norestart
重启系统 使配置生效。
3、 执行安装命令
复制修正后的命令到 管理员权限的 CMD 中运行:
start /w "" "D:computer_softDockerDocker Desktop Installer.exe" install --installation-dir="D:Program FilesDocker" --wsl-default-data-root="D:Dockerwsl-data" --windows-containers-default-data-root="D:Dockerwindows-containers" --accept-license
4、 安装后验证
(1)配置环境
-
按
Win+S
输入环境变量
→ 选择「编辑系统环境变量」 -
在「系统变量」中找到
Path
→ 点击「编辑」 -
添加以下路径(根据实际安装目录调整):
D:Program FilesDockerDocker esourcesin
-
重启 CMD 并验证:
docker --version
(2)检查服务状态
sc query com.docker.service # 应输出 STATE : 4 RUNNING
(3)测试基础功能
docker --version docker run --rm hello-world wsl -d docker-desktop
5. 常见问题处理
问题现象 | 解决方案 |
---|---|
安装程序报错“路径不存在” | 确保手动创建的目录存在且权限正确 |
WSL2 初始化失败 | 下载 WSL2 内核更新包 手动安装 |
Docker Desktop 启动卡住 | 关闭防火墙/杀毒软件后重试 |
8. 完整清理脚本(备用)
若需重装,先运行以下命令清理旧数据:
wsl --unregister docker-desktop wsl --unregister docker-desktop-data rd /s /q "D:Program FilesDocker" rd /s /q "D:Docker"
通过以上步骤,Docker Desktop 将正确安装到 D:Program FilesDocker
,数据存储路径也更清晰合理。若仍有问题,请检查安装日志(通常位于 %TEMP%DockerDesktopInstaller.log
)。