Windows11下清理Docker Desktop与wsl的C盘空间占用

Kudō Shin-ichi 2024-07-05 09:37:01 阅读 72

xshell连接Windows中通过wsl安装的linux子系统-Ubuntu 22.04

一、清理Docker Desktop的磁盘占用

<code>前提:首先启动Windows上的Docker Desktop

//【查看docker 占用的空间】

docker system df

TYPE 列出了docker 使用磁盘的 4 种类型:

Images:所有镜像占用的空间,包括拉取下来的镜像,和本地构建的。

Containers:运行的容器占用的空间,表示每个容器的读写层的空间。

Local Volumes:容器挂载本地数据卷的空间。

Build Cache:镜像构建过程中产生的缓存空间(只有在使用 BuildKit 时才有,Docker 18.09 以后可用)。

RECLAIMABLE :可回收大小。

//【镜像的磁盘占用】

//列出所有悬挂状态的镜像:docker image ls -f dangling=true

//1-删除镜像

docker image prune 或者 docker image rm $(docker image ls -f dangling=true -q)

//【数据卷的磁盘占用】

//2-删除不再使用的数据卷

docker volume prune 或者 docker volume rm $(docker volume ls -q)

//【Build Cache 的磁盘占用】

//3-删除 build cache磁盘占用

docker builder prune

//【4-一键清理】

docker system prune

在这里插入图片描述

二、清理wsl的磁盘占用

<code>//1-可以先使用命令行来检查它的状态:

wsl -l -v

或者

wsl --list -v

或者

wsl.exe --list --verbose

//2-如果状态是 Running,再用命令行去关闭:

wsl.exe --terminate 名称

例如:

wsl.exe --terminate Ubuntu-22.04

wsl.exe --terminate docker-desktop

wsl.exe --terminate docker-desktop-data

//3-关闭所有 WSL 实例

wsl.exe --shutdown

//4-使用diskpart工具压缩虚拟磁盘文件

//4-1

找到你的wsl虚拟磁盘位置,我这里是

C:\Users\JIACHENGER\AppData\Local\Docker\wsl\data\DockerDesktopWSL\data\ext4.vhdx

C:\Users\JIACHENGER\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu22.04LTS_79rhkp1fndgsc\LocalState\ext4.vhdx

//4-2

在PowerShell中,输入diskpart命令,启动diskpart工具。

//4-3 依次输入下列命令

//选择目标磁盘文件

select vdisk file="C:\Users\JIACHENGER\AppData\Local\Docker\wsl\data\DockerDesktopWSL\data\ext4.vhdx"code>

select vdisk file="C:\Users\JIACHENGER\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu22.04LTS_79rhkp1fndgsc\LocalState\ext4.vhdx"code>

//以只读模式连接虚拟磁盘文件

attach vdisk readonly

//开始压缩虚拟磁盘文件

compact vdisk

//分离虚拟磁盘文件

detach vdisk

//退出diskpart工具

exit

1-可以先使用命令行来检查它的状态

在这里插入图片描述

<code>2-如果状态是 Running,再用命令行去关闭

在这里插入图片描述

<code>使用diskpart工具压缩虚拟磁盘文件

在这里插入图片描述

三、参考资料

如何管理 WSL 磁盘空间

如何使用 WSL 在 Windows 上安装 Linux

WSL 的基本命令



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。