WSL2のLinuxおよびDockerイメージ格納先を任意のディレクトリに移動する
Windows Store
からインストールできるWSL2
のUbuntu
および、Docker Desktop WSL2 Backend
のイメージ格納先がデフォルトではCドライブに格納される。
Cドライブに必要最低限なSSD、Dドライブに大容量HDDを割り当てているため、Cドライブが枯渇するためDドライブに移動させたい。
ここでは、WSL2
のUbuntuと、Docker Desktop WSL2 Backend
のインストールフォルダ変更についての調査・確認結果を記す。
デフォルトのインストール先
ディストリビューション | 概要 | 実体(デフォルト) |
---|---|---|
Ubuntu | Microsoft StoreからインストールできるLinux | %LocalAppData%\Packages$packageName\LocalState\ext4.vhdx |
docker-desktop | Dockerを動かすためのエンジン | %LocalAppData%\Docker\wsl\data\ext4.vhdx |
docker-desktop-data | イメージやコンテナを格納する | %LocalAppData%\Docker\wsl\distro\ext4.vhdx |
何でもかんでも、%LocalAppData%
に溜め込むWindowsの流儀に未だに慣れない。
これらのvnhd
ファイルを新しく作成したD:\wsl
ディレクトリに移動する。
手順
1. Docker Desktop for Windowsの停止
タスクトレイに常駐しているDocker Desktop
を停止する。
2. WSLの停止
wsl -l -v
で現在のWSL
の動作状況を確認でき、wsl --sutdown
でWSL
を停止する。
wsl --shutdown
wsl -l -v
3. ディストリビューションのExport
wsl --export <Distro> <FileName>
で、ディストリビューションをtarファイルにエクスポートする。
ここでは、Ubuntu
と、Docker Desktop
のディストリビューションを一緒にエクスポートする。
mkdir D:\wsl
wsl --export Ubuntu D:\wsl\Ubuntu20.04.tar
wsl --export docker-desktop D:\wsl\docker-desktop.tar
wsl --export docker-desktop-data D:\wsl\docker-desktop-data.tar
4. ディストリビューションの解除(削除)
wsl --unregister <Distro>
で、指定したディストリビューションの登録を解除する。
このコマンドを実行すると、既存のext4.vhdx
が削除されるため、注意が必要である。
wsl --unregister Ubuntu
wsl --unregister docker-desktop
wsl --unregister docker-desktop-data
5. ディストリビューションのインポート
wsl --import <Distro> <InstallLocation> <FileName>
で指定したtarファイルを新しいディストリビューションとしてインポートする。
wsl --import Ubuntu20.04 D:\wsl\Ubuntu20.04 D:\wsl\Ubuntu20.04.tar
wsl --import docker-desktop D:\wsl\docker-desktop docker-desktop.tar
wsl --import docker-desktop-data D:\wsl\docker-desktop-data docker-desktop-data.tar
6. Docker Desktopを起動させる
Docker Desktop
を起動して、動作確認する。
参考URL
Related contents
TECH
2021.07.25
TECH
2018.02.24
TECH
2015.11.23
GADGET
2021.03.20
GADGET
2021.02.13