Windows 电脑上安装 Docker Desktop 没多久,发现C盘磁盘容量大幅减少,经过查找发现是被 Docker VM 的磁盘映像 ext4.vhdx 占用的。
WSL2 模式下 docker-desktop-data vm 磁盘映像通常位于以下位置:
C:\Users\ZHANGQIN\AppData\Local\Docker\wsl\data按照以下步骤可其重新定位到其他目录,并保留所有现有的 Docker 数据。
关闭 Docker Desktop
右键单击 Docker Desktop 图标关闭 Docker 桌面,然后选择退出 Docker 桌面。
确保所有发行版本都已关闭
打开命令提示符,输入wsl --list -v
![[]](https://www.zhangqin.tech/2021/09/13/%E8%BF%90%E7%BB%B4/Windows%E9%80%9A%E8%BF%87WSL2%E4%BF%AE%E6%94%B9Docker%E7%A3%81%E7%9B%98%E6%98%A0%E5%83%8F%E6%96%87%E4%BB%B6%E4%BD%8D%E7%BD%AE/wsl-list-result.png)
默认情况下,Docker Desktop for Window 会创建如下两个发行版
docker-desktop (对应 distro/ext4.vhdx)
docker-desktop-data (对应 data/ext4.vhdx)
导出 docker-desktop-data 映像文件(备份 image 及相关文件)
以docker-desktop-data为例(此文件最大),使用如下命令:
wsl --export docker-desktop-data "D:\mydata\wsl\docker-desktop-data.tar"取消注册 docker-desktop-data
需注意C:\Users\ZHANGQIN\AppData\Local\Docker\wsl\data\ext4.vhdx文件会被自动删除。
wsl --unregister docker-desktop-data导入 docker-desktop-data,并设置新的路径
将备份的 docker-desktop-data 再导入回 wsl,并设置路径,即新的镜像及各种 docker 使用的文件的挂载目录
wsl --import docker-desktop-data "D:\mydata\wsl\data\" "D:\mydata\wsl\docker-desktop-data.tar" --version 2重新启动 Docker Desktop
命令执行完毕,就能在目录下看到文件了,这时次启动 Docker Desktop 即可。
如果有必要,docker-desktop 也可按照该步骤修改文件位置,只是distro/ext4.vhdx并不怎么大。