Docker(Windows) - 肥大化した ext4.vhdx の容量を減らす

不要になったイメージを削除しても ext4.vhdx のファイルサイズは減りません。最適化することで仮想ハードディスクイメージのサイズを削減できます。

最適化前のext4.vhdx -> 約8Gバイト
最適化前のext4.vhdx -> 約8Gバイト
最適化後のext4.vhdx -> 約5Gバイト
最適化後のext4.vhdx -> 約5Gバイト

事前確認

最適化手順(容量の削減方法)

  1. タスクトレイの docker アイコンを右クリックし、Quit Docker Desktop を選択して docker を終了します。
    Quit Docker Desktop (Dockerの終了)
    Quit Docker Desktop (Dockerの終了)
  2. PowerShell を管理者権限で開きます。
  3. 次のコマンドを実行し、WSL を終了します。
    wsl --shutdown
    
    wsl --shutdown (WSLの終了)
    wsl --shutdown (WSLの終了)
  4. 作業フォルダを ext4.vhdx ファイルのある場所に移動します。

    ユーザー名 の箇所を、環境に合わせて変更してください。

    cd C:\Users\ユーザー名\AppData\Local\Docker\wsl\data
    
    cd (作業フォルダの移動)
    cd (作業フォルダの移動)
  5. 次のコマンドを実行し、イメージファイルを最適化します。
    Optimize-VHD -Path .\ext4.vhdx -Mode full
    
    Optimize-VHD (最適化)
    Optimize-VHD (最適化)
  6. 最適化が始まります。
    最適化中の様子
    最適化中の様子

    最適化が終了すると、8GB から 5GB に削減されました。

    最適化後のext4.vhdx
    最適化後のext4.vhdx
  7. 最適化が完了したら Docker を起動します。

検証環境

関連ページ

改訂履歴