Docker for Macのrawディスク移行

Docker for MacのVersion 17.12.0から、Linux VMのディスクのrawフォーマットがサポートされています。
High Sierra+APFS+SSD構成が前提ですが、Release Notesによると “from 320MiB/sec to 600MiB/sec in `dd` on a 2015 MacBook Pro” とのことで、スループットが倍になるようです。

rawフォーマットへの移行

既存の環境では、qcowフォーマットのファイル上にディスクイメージが作成されているため、移行するためには再作成が必要になります。

この際、VM上のコンテナイメージはすべて消えるため、注意が必要です。
適切にVolumeを利用するなど、コンテナイメージが揮発することを意識した構成になっていれば問題ありませんが、単純にコンテナ上にデータを保持している場合はVMディスクを消すとなくなります。

DockerのPreferences UIの”Reset”タブにある、”Remove all data”ボタン(または”Reset to factory defaults”)を押すと、既存のデータが削除され、引き続いてDocker再起動時にrawディスクが作成されます。

またその際、Dockerのネットワークも消えますので、必要に応じてdocker network create some_dockernetworkします。

rawディスクに切り替わったことは、Preferences UIの”Disk”タブのイメージPATH文字列の拡張子で何とか判別できます。