欢迎光临
我们一直在努力

Docker Desktop安装与迁移D盘完整教程 (1)

Docker Desktop安装与迁移D盘完整教程

前言

很多小伙伴安装 Docker Desktop 时,默认会装到 C 盘,而且 WSL2 的镜像、容器数据也默认存在 C 盘,很快就会把 C 盘占满。本文详细介绍全新安装时指定 D 盘 + WSL2 数据完整迁移的完整流程,包含所有常见报错的解决方案。


一、全新安装 Docker Desktop 到 D 盘(官方支持方法)

Docker Desktop 安装程序默认没有图形化路径选择,但可以通过命令行参数指定安装目录。

1.1 准备工作

  • 从Docker 官网下载最新版安装包

  • 或者网盘链接:通过网盘分享的文件:Docker Desktop Installer.exe 链接: https://pan.baidu.com/s/1E8sOyEFzELzti4YYQDvnHQ?pwd=vdck 提取码: vdck –来自百度网盘超级会员v6的分享

  • 记住安装包下载路径(通常在Downloads文件夹)

  • 提前在 D 盘创建安装目录:D:\\Docker

  • 1.2 命令行安装(核心步骤)

  • 以管理员身份打开 PowerShell

  • 切换到安装包所在目录:

  • cd "C:\\Users\\你的用户名\\Downloads"

  • 执行安装命令(直接复制):
  • & ".\\Docker Desktop Installer.exe" install accept-license installation-dir="D:\\Docker"

    ⚠️ 注意:

    • 如果安装包文件名带加号(如Docker+Desktop+Installer.exe),请对应修改文件名

    • &是 PowerShell 调用运算符,专门处理带空格的文件名

    • 路径必须用英文双引号包裹

    1.3 安装完成

    等待提示Installation succeeded即安装成功,此时 Docker 主程序已经安装在D:\\Docker目录。


    二、WSL2 数据目录迁移(必做!释放 C 盘空间)

    ⚠️ 重点提醒:即使程序安装在 D 盘,Docker 的镜像、容器、数据卷默认仍存在 C 盘!必须单独迁移 WSL2 数据目录,这才是占用 C 盘空间的大头。

    2.1 迁移前置条件

  • Docker Desktop 已经安装完成

  • 打开一次 Docker Desktop,等待初始化完成(生成 WSL 实例)

  • 完全关闭 Docker Desktop(右键右下角图标→退出)

  • 2.2 完整迁移步骤

    管理员 PowerShell 逐条执行:

    步骤 1:关闭所有 WSL 实例

    wsl shutdown

    步骤 2:查看已存在的 WSL 发行版

    wsl list verbose

    正常应该看到两个发行版:

    • docker-desktop

    • docker-desktop-data

    步骤 3:导出原有 WSL 数据到 D 盘

    wsl export docker-desktop-data "D:\\Docker\\wsl_backup.tar"

    步骤 4:注销 C 盘原有数据

    wsl unregister docker-desktop-data

    步骤 5:导入数据到 D 盘新目录

    提前在 D 盘创建文件夹:D:\\Docker\\wsl-data

    wsl import docker-desktop-data "D:\\Docker\\wsl-data" "D:\\Docker\\wsl_backup.tar" version 2

    步骤 6:(可选)删除备份文件释放空间

    确认 Docker 正常运行后,删除备份文件:

    Remove-Item "D:\\Docker\\wsl_backup.tar"


    三、微软商店 Ubuntu 迁移到 D 盘(通用 WSL 迁移方法)

    从微软商店安装的 Ubuntu 默认也安装在 C 盘,同样可以通过 WSL 的导出导入机制迁移到 D 盘,方法与 Docker 迁移完全一致。

    3.1 迁移前置条件

  • 已从微软商店安装 Ubuntu 并完成初始化

  • 关闭所有 Ubuntu 终端窗口

  • 提前在 D 盘创建目录:D:\\WSL\\Ubuntu

  • 3.2 完整迁移步骤

    管理员 PowerShell 逐条执行:

    步骤 1:关闭所有 WSL 实例

    wsl shutdown

    步骤 2:查看 Ubuntu 发行版名称

    wsl list verbose

    常见名称:Ubuntu、Ubuntu-22.04、Ubuntu-24.04,记住你的发行版名称

    步骤 3:导出 Ubuntu 系统到 D 盘

    # 替换成你的发行版名称
    wsl export Ubuntu "D:\\WSL\\ubuntu_backup.tar"

    步骤 4:注销 C 盘原有 Ubuntu

    # 替换成你的发行版名称
    wsl unregister Ubuntu

    步骤 5:导入 Ubuntu 到 D 盘新目录

    # 替换成你的发行版名称
    wsl import Ubuntu "D:\\WSL\\Ubuntu" "D:\\WSL\\ubuntu_backup.tar" version 2

    步骤 6:设置默认登录用户(重要!)

    微软商店安装的 Ubuntu 迁移后默认会变成 root 登录,需要重新设置默认用户:

    # 进入Ubuntu
    wsl d Ubuntu

    # 在Ubuntu终端内执行(替换成你的用户名)
    echo e "[user]\\ndefault=你的用户名" > /etc/wsl.conf

    # 退出Ubuntu
    exit

    # 重启WSL生效
    wsl shutdown

    步骤 7:(可选)删除备份文件

    Remove-Item "D:\\WSL\\ubuntu_backup.tar"

    3.3 迁移验证

  • 打开 Ubuntu 终端,确认文件、配置、软件都完整保留

  • 查看 D 盘D:\\WSL\\Ubuntu目录下已生成 ext4.vhdx 数据文件

  • 微软商店的 Ubuntu 图标仍可正常点击启动


  • 四、常见报错与解决方案(全踩坑总结)

    报错 1:系统找不到指定的文件

    原因:安装包文件名带空格 / 加号,PowerShell 识别错误 解决:使用&运算符 + 完整引号包裹文件名:

    & ".\\Docker+Desktop+Installer.exe" install accept-license installation-dir="D:\\Docker"


    报错 2:WSL_E_DISTRO_NOT_FOUND 找不到分发版

    原因:Docker 刚安装,还没启动过,WSL 实例未生成 解决:

  • 打开 Docker Desktop,等待完全启动初始化

  • 关闭 Docker Desktop 后再执行迁移命令


  • 报错 3:不存在或未被停止

    原因:Docker 后台进程仍在运行,锁定 WSL 文件 解决:彻底终止所有 Docker 进程:

    taskkill /F /IM "Docker Desktop.exe"
    taskkill /F /IM "com.docker.backend.exe"
    wsl shutdown
    Start-Sleep Seconds 5

    再重新执行迁移命令


    报错 4:Wsl/Service/0x80070032 参考的对象类型不支持尝试的操作

    原因:WSL 网络组件异常 解决(90% 概率解决):

    # 管理员PowerShell执行
    netsh winsock reset
    # 重启电脑
    shutdown /r /t 0


    报错 5:服务名无效 LxssManager

    原因:Win11 新版本已弃用 LxssManager 服务 解决:忽略此错误,直接执行上面的netsh winsock reset方案即可


    五、验证迁移成功

  • 打开 Docker Desktop,等待正常启动

  • 拉取一个测试镜像验证:

  • docker pull hello-world
    docker run hello-world

  • 查看 D 盘空间占用:D:\\Docker\\wsl-data目录下的 ext4.vhdx 文件就是 WSL 数据文件

  • 六、后续优化建议

  • 设置中文界面:Docker 设置→General→User interface language→选择简体中文→重启

  • 限制 WSL 内存占用:在用户目录C:\\Users\\用户名下创建.wslconfig文件:

  • [wsl2]
    memory=4GB
    processors=4
    swap=2GB

  • 定期清理 Docker 无用镜像:
  • docker system prune a


    总结

  • ✅ Docker 主程序:通过–installation-dir参数安装到 D 盘

  • ✅ Docker WSL2 数据:通过导出 – 注销 – 导入迁移到 D 盘

  • ✅ 微软商店 Ubuntu:同样通过 WSL 通用迁移方法迁移到 D 盘

  • ✅ 常见报错:优先尝试netsh winsock reset + 重启电脑

  • 按照本教程操作,Docker Desktop 和 Ubuntu 都将完全运行在 D 盘,不再占用 C 盘宝贵空间,所有镜像、容器、系统数据都完整保留。

    (注:文档部分内容可能由 AI 生成)

    赞(0)
    未经允许不得转载:171主机测评 » Docker Desktop安装与迁移D盘完整教程 (1)
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址