一、建立软连接

首先先建立软连接,将 Docker 默认安装的目录链接到其他盘,这个最好使用 windows 自带的终端,使用 powershell 有可能会识别不到 mklink 命令

mklink /j "C:\Program Files\Docker" "D:\Docker"

建立软连接
链接完成后在 D 盘创建 Docker 文件夹

二、安装

安装之前看一眼储存空间
查看安装前储存空间
安装完成后,可以看到实际就是被安装在了 D 盘
安装后储存空间
我第一次安装了后才想到写博客记录一下,然后又卸载了重装的,第一次安装会提示重启,另外 C 盘内存第二次安装没有增加,第一次安装没有注意到
查看docker是否安装完成

三、安装 WSL2

第一次使用 Docker Desktop 会提示要安装 WSL2,直接去他提示的链接下载就行
Docker Desktop提示安装WSL2
链接内下载 WSL2 位置
直接点击这个下载,然后安装,默认安装到 C 盘的
查看内存占用情况

四、使用 Docker Desktop

安装 WSL2 完成后再重新启动 Docker Desktop 就行,前面弹窗没关闭的话直接点击 Restart 就行了
启动Docker Desktop
初始化完成,C 盘可用内存又减少了一些
查看内存占用情况
找了一下,大头应该就是 C:\Users\司大帅\AppData\Local\Docker\wsl 文件夹,里面应该是 windows 的 linux 子系统的虚拟磁盘文件
查看映像文件占用情况
查看映像文件占用情况
这个可以迁移到其他盘

五、迁移虚拟硬盘映像文件

先输入下面命令查看 docker 状态

wsl -l -v

查看 docker 状态
使用以下命令关闭 docker-desktop-data

wsl --shutdown

关闭 docker-desktop-data
使用以下命令导出 docker-desktop-data,我这里导出到 D:\Docker\docker-desktop-data.tar

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

注销 docker-desktop-data,C:\Users\司大帅\AppData\Local\Docker\wsl\data 文件夹下的硬盘映像文件就会被注销

wsl --unregister docker-desktop-data

导入 docker-desktop-data,将刚刚导出的 docker-desktop-data 导入到 D:\Docker\data\ 文件夹

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

导入后
查看内存占用情况
然后重新启动 Docker Desktop

六、拉取镜像测试空间

刚才装东西测试,又卸载重新装了一遍
查看内存占用情况
拉了几个镜像,可以看到 D 盘空间减少了
查看内存占用情况
主要就是刚刚迁移的这个硬盘映像文件
查看映像文件内存占用
但是镜像全部删除后,内存并没有减少,所以下面压缩内存
查看映像文件内存占用

七、压缩内存

使用以下命令关闭 docker-desktop-data

wsl --shutdown

使用以下命令打开 DISKPART 命令行

diskpart

在 DISKPART 命令行使用以下命令选择虚拟磁盘文件

select vdisk file="D:\Docker\data\ext4.vhdx"

在 DISKPART 命令行使用以下命令压缩文件

compact vdisk

在 DISKPART 命令行使用以下命令压缩完毕后卸载磁盘

detach vdisk

压缩完成后
查看映像文件内存占用
但是实际好像并不是完全把前面增加的内存压缩到 0,还是会有一些残余,又拉了几个镜像删除压缩后,可以看到占用内存还是比前面多了一些
查看映像文件内存占用

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐