將Docker Desktop(WSL 2 方式)文件存儲移出系統(tǒng)盤

默認情況下,Docker Desktop for Window會創(chuàng)建如下兩個發(fā)行版(distro):
docker-desktop:用于存放程序
docker-desktop-data:用于存放鏡像

如果訪問%LOCALAPPDATA%/Docker/wsl目錄,就可以看到兩個文件夾,同時每個文件夾中都會有一個vhdx文件。

'data/ext4.vhdx'被docker-desktop-data 發(fā)行版使用;
'distro/ext4.vhdx'被 docker-desktop 發(fā)行版使用;
docker-desktop-data 是被用來存儲docker images 以及相關的數(shù)據(jù)。因此,它的大小會隨著使用逐步增長,因此導致系統(tǒng)盤空間不足。

解決方法

1、刪除所有容器

ps: 可以試試命令

docker rm `docker ps -a -q`

①查看所有容器:
cmd運行docker ps -a
②刪除已部署容器
cmd運行docker rm 容器id或者直接打開docker 在Containers/Apps里面刪除所有容器
③再次檢查容器是否刪除干凈
docker ps -a

2、退出Docker Desktop

3、使用cmd關閉所有發(fā)行版

wsl --shutdown

4、檢查是否所有發(fā)行版都已經(jīng)關閉

wsl --list --verbose

如下狀態(tài)都為Stopped則都已關閉

5、備份已有image數(shù)據(jù)

①創(chuàng)建文件夾,目錄根據(jù)自己實際情況指定。(本人使用D:\docker)。
②通過下面命令,將已有的數(shù)據(jù),以tar格式備份已有數(shù)據(jù)到指定目錄(D:\docker)
wsl --export docker-desktop-data D:\docker\docker-desktop-data.tar

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

'docker-desktop-data'與'docker-desktop'就是第4步中,列舉出來的用于存放鏡像和程序的發(fā)行版本。

6、注銷當前的發(fā)行版

wsl --unregister docker-desktop-data

wsl --unregister docker-desktop

該命令執(zhí)行完成之后,再次使用wsl --list --verbose命令查看,'docker-desktop-data'與'docker-desktop'就已經(jīng)不在了。

7、重新導入備份的'docker-desktop-data'與'docker-desktop'

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

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

命令執(zhí)行完成后使用wsl --list --verbose命令查看,皆已恢復。

'D:\docker\data'與'D:\docker\docker-desktop'即指定vhdx新的放置目錄。
'D:\docker\docker-desktop-data.tar'與'D:\docker\docker-desktop.tar'指定第5步中備份的數(shù)據(jù)

8、重新運行Docker Desktop

Docker Desktop 運行成功之后,查看新目錄中的vhdx的修改時間,如果修改時間是最新時間,就說明配置成功。

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容