[Windows] Docker Desktop の ディスク領域 を Cドライブから別のドライブへ移動する方法

Docker
Docker Linux

WSL2が使えるようになったので、Windows でも Docker を使ってみることにしました。Docker Desktop をインストールすると、無条件で Cドライブ上に仮想環境が作られます。が、Cドライブの空き容量が少なくなったので、Docker環境をDドライブに移動したという話。

試した環境

Windows10 Pro 2004 OSビルド 19041.329
Docker Desktop community 2.3.0.3
WSL2(Windows Subsystem for Linux)

Docker Desktop の設定では WSL2 Integration を有効にしています。WSLのディストリビューションは Ubuntu 20.04 を使っているので、それとのインテグレーションも有効にしてあります。

方法

Docker Desktop が使っている WSL 上のディストリビューション docker-desktop-data が Cドライブ上にありディスクを消費しているので、一度エクスポートしてから、Dドライブにインポートするという方法をとります。

> wsl --list
Linux 用 Windows サブシステム ディストリビューション:
Ubuntu-20.04 (既定)
docker-desktop-data  ←←←← これを移動します。
docker-desktop

実際のディスクイメージは、%LOCALAPPDATA%\Docker\wsl\data\ext4.vhdx にあります。

手順

Docker Desktop を止めます。

コマンドプロンプトからWSLのディストリビューションを止めます。

> wsl --shutdown
> wsl -l -v
  NAME                   STATE           VERSION
* Ubuntu-20.04           Stopped         2
  docker-desktop-data    Stopped         2
  docker-desktop         Stopped         2

docker-desktop-data を tar ファイルにエクスポートします。少し時間がかかります。
wsl --export <ディストリビューション> <ファイル名>

> wsl --export docker-desktop-data  D:\Docker\docker-desktop-data.tar

ext4.vhdx は 50GB を超えていましたが、エクスポートした docker-desktop-data.tar は 11GBでした。

ディストリビューションの登録を解除します。

> wsl --unregister docker-desktop-data

エクスポートしておいた tar ファイルをインポートします。コマンドの引数でインストール場所を指定しますが、ここを Dドライブなどの容量に余裕のある場所にします。
オプションには WSLのバージョンを指定しますが、デフォルトが WSL2 であれば指定する必要はありません。
wsl --import <ディストリビューション> <インストール場所> <ファイル名> [オプション]

> wsl --import docker-desktop-data D:\docker-desktop\data D:\Docker\docker-desktop-data.tar

手順は以上です。

わし
わし

とくに難しいところはありまへん。

スポンサーリンク
☆Geha☆をフォローする