Docker for Desktop(Windows)のディスクイメージを移動する
Windows で Docker を使用する際に Docker for Desktop を利用している場合、Docker の環境は WSL/WSL2 を活用して構築されている。
デフォルトだとAppData配下にディスクイメージが作成され、WSLとは別で管理された領域が使用される。
問題点
WSL の場合 WSLのディスクイメージを移動する に記載した方法で export したあと import すれば移動できたが、Docker for Desktop の場合はアプリに管理された位置にディスクイメージが存在している必要がある。
このパスは Settings > Resources > Advanced > Disk image location から確認できるがインストール時に確定するため後で変更することはできない (v4.43.1で確認済み)
Issue にも同様のフィードバックがある
Disk image location is not changing · Issue #13345 · docker/for-win
解決方法
現時点で有効な手段は一度 Docker for Desktop のアンインストールを行い、インストール時のオプションを指定することで別の領域でディスクイメージを作成できる
code:sh
# Docker for Desktop のインストーラーをダウンロード
https://www.docker.com/ja-jp/products/docker-desktop/
# オプションを指定してインストール (D:\docker インストールする例)
Start-Process -Wait -FilePath "$HOME\Desktop\Docker Desktop Installer.exe" -ArgumentList "install", "-accept-license", "--installation-dir=D:\docker\app", "--wsl-default-data-root=D:\docker\wsl", "--windows-containers-default-data-root=D:\docker"