wsl docker 遷移 - windows

bigroc發表於2024-08-15

WSL、Docker 遷移

Windows WSL Docker 預設安裝路徑在C盤的,導致岌岌可危的C盤空間😱更加吃緊,一不小心就要出現👇這種情況了

image

接下來我們一起遷移它們吧

遷移 WSL

WSL2 預設安裝在 C 盤,我們可以透過以下步驟遷移安裝位置
透過以下命令列出已安裝的 Linux 發行版:

wsl -l -v

image
可以看到已安裝了 Ubuntu,其執行狀態為:Stopped

匯出分發版

如果執行狀態為 Running,需先透過以下命令關閉:

wsl --shutdown

然後我們透過以下命令將 Ubuntu 匯出為 tar 檔案:

wsl --export Ubuntu d:\wsl\Ubuntu.tar

image

⚠️
wsl --export <Distribution Name> <FileName>
<Distribution Name> 為目標 Linux 發行版的名稱,我安裝的為: Ubuntu
<FileName> 為匯出的檔名,這裡我匯出到 d:\wsl\Ubuntu.tar
當然可以是任意位置

登出並解除安裝

然後登出並解除安裝 Ubuntu

wsl --unregister Ubuntu

這時候可以執行驗證是否完成登出並解除安裝
wsl -l -v

image

image

👍完美,符合預期!!!

匯入安裝

將 Ubuntu 從新位置匯入:
wsl --import Ubuntu d:\wsl\Ubuntu d:\wsl\Ubuntu.tar
再次檢視已安裝的 Linux 發行版
wsl -l -v
image

設定預設使用者
Ubuntu config --default-user bigroc

⚠️
<DistributionName> config --default-user <Username>
<DistributionName> 為目標 Linux 發行版的名稱,我安裝的為: Ubuntu,命令裡要寫為:Ubuntu
假如你的是Ubuntu-22.04,命令裡要寫為:Ubuntu2204
<Username> 為 WSL 發行版中存在的使用者名稱,在設定 Linux 使用者名稱和密碼時我建立的使用者為:bigroc ,所以命令裡的 <Username> 這裡就為:bigroc

遷移 docker-desktop-data 和 docker-desktop

Docker Desktop 會建立兩個發行版:docker-desktop-datadocker-desktop,它們的預設位置在 C:\Users\<你電腦的使用者名稱>\AppData\Local\Docker\wsl,我們同樣可以參考上面匯入匯出 Ubuntu 的過程將docker-desktop-datadocker-desktop 遷移到其他位置

過程一致⬇️

匯出

wsl --export docker-desktop-data d:\wsl\docker-desktop-data.tar
wsl --export docker-desktop-data d:\wsl\docker-desktop.tar

登出解除安裝

wsl --unregister docker-desktop-data
wsl --unregister docker-desktop

匯入安裝

wsl --import docker-desktop-data d:\wsl\docker-desktop-data d:\wsl\docker-desktop-data.tar
wsl --import docker-desktop d:\wsl\docker-desktop d:\wsl\docker-desktop.tar

至此 公司的電腦又一次成功復活
image

參考

  1. 【microsoft】WSL 的基本命令
  2. 【csdn】Win11 安裝 Docker Desktop 和 WSL2 並進行安裝位置遷移

相關文章