LoginSignup
139
122

More than 3 years have passed since last update.

WSL2 Dockerのイメージ・コンテナの格納先を変更したい (WSL2のvhdxファイルを移動させたい)

Posted at

Docker Desktop backend WSL2 をインストールすると、docker-desktopとdocker-desktop-dataというふたつのディストリビューションが作成されます。

ディストリビューション 役割 実体(デフォルト)
docker-desktop Dockerを動かすためのエンジン %LocalAppData%\Docker\wsl\data\ext4.vhdx
docker-desktop-data イメージやコンテナを格納する %LocalAppData%\Docker\wsl\distro\ext4.vhdx

とくにdocker-desktop-dataについては、docker pullなどを繰り返すたびにもりもり大きくなっていくため、%LocalAppData%に置いておきたくない、ドライブごと変えてしまいたいということが十分ありえます。

そこで本記事ではdocker-desktopとdocker-desktop-dataの実体であるext4.vhdxを別の場所に移動させる方法については記述します。ここでは例として、docker-desktopのext4.vhdxD:\wsl\docker-desktopに、docker-desktop-dataのext4.vhdxD:\wsl\docker-desktop-dataにそれぞれ移動させたいと思います。

1. Docker Desktopの停止

タスクトレイのDockerマークを右クリックし、Quit Docker Desktopを押下する。

2. ディストリビューションのエクスポート

ディストリビューションをtarファイルにエクスポートする。

wsl --export docker-desktop docker-desktop.tar
wsl --export docker-desktop-data docker-desktop-data.tar

3. ディストリビューションの削除

ここでdocker-desktopとdocker-desktop-dataをいったん削除します。

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

4. ディストリビューションのインポート

2.でエクスポートしたtarファイルを入力に、ディストリビューションの再インポートを行います。このとき、ext4.vhdxの移動先となるフォルダを必ず指定します。

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

5. Docker Desktopの起動

最後に任意の方法でDocker Desktopを起動させれば完了になります。

環境情報

  • Dockerのバージョン:
C:\>docker version
Client: Docker Engine - Community
 Version:           19.03.8
 API version:       1.40
 Go version:        go1.12.17
 Git commit:        afacb8b
 Built:             Wed Mar 11 01:23:10 2020
 OS/Arch:           windows/amd64
 Experimental:      false

Server: Docker Engine - Community
 Engine:
  Version:          19.03.8
  API version:      1.40 (minimum version 1.12)
  Go version:       go1.12.17
  Git commit:       afacb8b
  Built:            Wed Mar 11 01:29:16 2020
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          v1.2.13
  GitCommit:        7ad184331fa3e55e52b890ea95e65ba581ae3429
 runc:
  Version:          1.0.0-rc10
  GitCommit:        dc9208a3303feef5b3839f4323d9beb36df0a9dd
 docker-init:
  Version:          0.18.0
  GitCommit:        fec3683
  • Windowsのバージョン:

image.png

139
122
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
139
122