You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows系统下如何将Docker Desktop安装到非系统盘并解决空间占用问题

解决Docker Desktop占用C盘空间及迁移到HDD的问题

先清理现有冗余空间(无需卸载)

  • 打开Docker Desktop,进入Settings -> Resources -> Disk,点击Clean up清理临时文件,再点击Prune unused data删除未使用的镜像、容器、卷和网络,这一步能释放不少缓存空间。
  • 如果用的是WSL2后端,还可以压缩WSL虚拟磁盘:
    1. 完全关闭Docker Desktop,然后在PowerShell里运行wsl --shutdown停止所有WSL实例。
    2. 执行命令压缩虚拟磁盘:
      optimize-vhd -Path "C:\Users\<你的用户名>\AppData\Local\Docker\wsl\data\ext4.vhdx" -Mode Full
      
      替换<你的用户名>为实际用户名,这个操作能回收WSL磁盘里的空闲空间。

迁移Docker数据到HDD(WSL2后端通用方法)

现在Docker Desktop默认用WSL2后端,直接改安装路径没用,得迁移WSL发行版:

  1. 彻底关闭Docker Desktop,确保任务栏里的Docker图标完全退出。
  2. 打开PowerShell,运行wsl --list --verbose,找到docker-desktop和docker-desktop-data两个发行版。
  3. 把这两个发行版导出到HDD的目标目录(比如D:\Docker):
    wsl --export docker-desktop D:\Docker\docker-desktop.tar
    wsl --export docker-desktop-data D:\Docker\docker-desktop-data.tar
    
  4. 注销原有的Docker WSL发行版:
    wsl --unregister docker-desktop
    wsl --unregister docker-desktop-data
    
  5. 从HDD导入发行版:
    wsl --import docker-desktop D:\Docker\desktop D:\Docker\docker-desktop.tar --version 2
    wsl --import docker-desktop-data D:\Docker\data D:\Docker\docker-desktop-data.tar --version 2
    
  6. 重新启动Docker Desktop,现在所有镜像、容器数据都会存在HDD的D:\Docker目录下,C盘不会再被占用。

关于修改--data-root无效的说明

如果是用Windows容器后端,不要去修改系统服务参数,直接在Docker Desktop里改:

  1. 进入Settings -> Docker Engine,在配置JSON里添加一行:
    "data-root": "D:\\Docker\\win-data"
    
  2. 点击Apply & Restart,Docker会自动迁移数据到新目录,无需手动改服务。
    之前改服务参数无效是因为Docker Desktop会接管服务配置,手动修改会被覆盖,还可能导致服务启动失败。

内容的提问来源于stack exchange,提问作者dokgu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 04:05:10