> 技术文档 > 【dify—2】docker重装_重装docker

【dify—2】docker重装_重装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. 通过控制面板卸载
  1. 按 Win+R 输入 appwiz.cpl

  2. 找到 Docker Desktop → 右键选择「卸载」

  3. 勾选 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-desktopwsl --unregister docker-desktop-data# 清理其他可能的残留分发(按实际名称替换)wsl --unregister Ubuntuwsl --unregister Ubuntu-20.04
3. 清除 Hyper-V 虚拟网络(如果使用过)
# 删除所有 WSL 虚拟硬盘文件del /f/s/q \"%USERPROFILE%\\AppData\\Local\\Packages\\CanonicalGroupLimited*\\LocalState\\*.vhdx\"del /f/s/q \"%USERPROFILE%\\AppData\\Local\\Packages\\Docker*\\LocalState\\*.vhdx\"# 强制删除 Docker 专用存储目录rd /s /q \"C:\\ProgramData\\DockerDesktop\"rd /s /q \"%USERPROFILE%\\AppData\\Local\\Docker\"

三、清理注册表(高风险操作!)

注意:操作前建议导出备份注册表(regedit → 文件 → 导出

  1. 按 Win+R 输入 regedit

  2. 删除以下路径

# WSL 通用配置HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Lxss# Docker 相关配置HKEY_CURRENT_USER\\Software\\Docker Inc.HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Docker Desktop

四、重启后检查残留项

  1. 打开资源管理器,检查以下路径是否已清空:

    C:\\Program Files\\Docker C:\\Users\\\\.docker C:\\ProgramData\\Docker
  2. 验证 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%\\AppData\\Local\\Packages\\CanonicalGroupLimited*\" rd /s /q \"%USERPROFILE%\\AppData\\Local\\Packages\\Docker*\" # 系统级残留 rd /s /q \"C:\\Program Files\\WindowsApps\\CanonicalGroupLimited*\" rd /s /q \"C:\\Program Files\\WindowsApps\\Docker*\"

七、验证清理结果

# 检查所有分发状态(应显示无分发) wsl -l -v # 检查虚拟磁盘文件(应无 .vhdx 文件) dir /s \"%LOCALAPPDATA%\\Packages\\*.vhdx\"

八、重建干净环境(可选)

若需重新使用 WSL2:

# 安装默认分发(例如 Ubuntu) wsl --install -d Ubuntu # 验证新环境 wsl -l -v

总结

1. WSL 虚拟硬盘文件(.vhdx)
  • 路径

    # 默认存储位置 %LOCALAPPDATA%\\Packages\\CanonicalGroupLimited*\\LocalState\\*.vhdx D:\\wsl\\ # 如果你曾自定义过安装路径
  • 手动检查

    dir /s \"%USERPROFILE%\\AppData\\Local\\Packages\\*.vhdx\" dir /s \"D:\\wsl\\*.vhdx\" # 按实际路径替换
  • 清理命令

    del /f/s/q \"%USERPROFILE%\\AppData\\Local\\Packages\\*.vhdx\"

2. Docker 专用残留
  • 文件路径

    C:\\ProgramData\\DockerDesktop %USERPROFILE%\\.docker
  • 清理命令(管理员权限):

    rd /s /q \"C:\\ProgramData\\DockerDesktop\" rd /s /q \"%USERPROFILE%\\.docker\"
3. 注册表残留
  • 关键路径

    HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Lxss HKEY_LOCAL_MACHINE\\SOFTWARE\\Docker 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:\\ProgramData\\DockerDesktop 4 检查注册表残留 手动删除 Lxss 和 Docker Inc. 项 5 验证环境 重新安装 Ubuntu 分发

💡 提示

如果后续重新安装 Docker 或 WSL 仍报错,可能是 系统权限 或 安全软件拦截 导致,可尝试:

  1. 以管理员身份运行所有命令。

  2. 暂时关闭杀毒软件/防火墙。

  3. 在安全模式下执行清理操作。


第二部分 重新安装

 可参考docker部分:【dify+docker安装教程】-CSDN博客

1、前置操作

(1) 手动创建目录(管理员权限)
mkdir \"D:\\Program Files\\Docker\" mkdir \"D:\\Docker\\wsl-data\" mkdir \"D:\\Docker\\windows-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_soft\\Docker\\Docker Desktop Installer.exe\" install --installation-dir=\"D:\\Program Files\\Docker\" --wsl-default-data-root=\"D:\\Docker\\wsl-data\" --windows-containers-default-data-root=\"D:\\Docker\\windows-containers\" --accept-license

4、 安装后验证

(1)配置环境
  • 按 Win+S 输入 环境变量 → 选择「编辑系统环境变量」

  • 在「系统变量」中找到 Path → 点击「编辑」

  • 添加以下路径(根据实际安装目录调整):

    D:\\Program Files\\Docker\\Docker\\resources\\bin
  • 重启 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 Files\\Docker\" rd /s /q \"D:\\Docker\"

通过以上步骤,Docker Desktop 将正确安装到 D:\\Program Files\\Docker,数据存储路径也更清晰合理。若仍有问题,请检查安装日志(通常位于 %TEMP%\\DockerDesktopInstaller.log)。