Windows 10 Home+Docker=💪
Windows 10 HomeのInsider Preview版(19041)をインストール
https://insider.windows.com/ja-jp/how-to-pc/に従ってhttps://www.microsoft.com/en-us/software-download/windowsinsiderpreviewadvancedを開き(Insider Previewを有効化したMicrosoftアカウントでのサインインが必要)、ISOファイルを入手。
これを書いているタイミングではfast ringもslow ringもISOファイルのビルド番号は19041。
ISOファイルを入手してインストール。手元ではNested Virtualizationを有効化したVMインフラ上へインストール。
メモリの空きが乏しかったので6GBとケチケチ。
Docker
「Docker Desktop」が「Windows 10 Home」の「WSL 2」に対応、プレビュー版が公開この話題。
キャッシュ開放
https://docs.microsoft.com/en-us/windows/wsl/reference
新しいwslコマンドではWindows側からデフォルトのディストロのコマンドを呼び出すshort-handが用意されている。
これを使えば、
wsl -- /bin/bash -c "echo 1 > /proc/sys/vm/drop_caches"
という具合でキャッシュを強制廃棄できる。適当に.batファイルへ書いてデスクトップにでも置いておけば、ファイルへやたらアクセスするイメージの作成/利用後(元記事ではNode.jsのnpmもりもり環境を例にしている)に呼んでやることで環境が平和になるはず。
感触
従来のHyper-V版Docker Desktopだとメモリ割り当ての粒度がたいぶあらくて おそらく起動時に上限設定までメモリ押さえてたのが、WSL2ベースだとVM(コンテナ)の必要に応じてPC搭載メモリの75%まで割り当てていく挙動(返却も頑張る)なので 特にメモリ32GB未満の環境で使う時にはWSL2版のほうが使い勝手良い印象