不要になったイメージを削除しても ext4.vhdx のファイルサイズは減りません。最適化することで仮想ハードディスクイメージのサイズを削減できます。
事前確認
- 管理者権限が必要です。
- 起動中の docker を終了する必要があります。
- 起動中の WSL(Windows Subsystem for Linux) を終了する必要があります。
最適化手順(容量の削減方法)
-
タスクトレイの docker アイコンを右クリックし、Quit Docker Desktop を選択して docker を終了します。
Quit Docker Desktop (Dockerの終了) - PowerShell を管理者権限で開きます。
-
次のコマンドを実行し、WSL を終了します。
wsl --shutdown
wsl --shutdown (WSLの終了) -
作業フォルダを ext4.vhdx ファイルのある場所に移動します。
ユーザー名 の箇所を、環境に合わせて変更してください。
cd C:\Users\ユーザー名\AppData\Local\Docker\wsl\data
cd (作業フォルダの移動) -
次のコマンドを実行し、イメージファイルを最適化します。
Optimize-VHD -Path .\ext4.vhdx -Mode full
Optimize-VHD (最適化) -
最適化が始まります。
最適化中の様子 最適化が終了すると、8GB から 5GB に削減されました。
最適化後のext4.vhdx - 最適化が完了したら Docker を起動します。
検証環境
- Docker Desktop 4.11.0 (83626)
- Docker Engine 20.10.17
- Microsoft Windows 10 Enterprise Version 21H2 OS Build 19044.1826 Experience: Windows Feature Experience Pack 120.2212.4180.0
- Docker Desktop 3.1.0(51484)
- Docker Engine 20.10.2
- Microsoft Windows 10 Pro Version 20H2 OS Build 19042.789 Experience: Windows Feature Experience Pack 120.2212.551.0