マルチブート Mac: macOS と Ubuntu Linux - Docker が最も速く実行されるのはどこでしょうか?

マルチブート Mac: macOS と Ubuntu Linux - Docker が最も速く実行されるのはどこでしょうか?

macOS または Ubuntu Linux のマルチブートを選択できる最近の* Mac では、どの OS で Docker が最も速く実行されますか?

このマルチブートにより、選択した OS のいずれかを起動して、マシンのハードウェア上で直接/ネイティブに実行できるようになります (「オンザメタル」)。

Docker はもともと Linux 用だったことを考えると、Ubuntu Linux 上で Docker が最も速く動作すると思われます。

macOS では、Docker は仮想化の一形態である HyperKit という仲介を使用します。公式リファレンスしたがって、VirtualBox などの他の形式の仮想化と同様に、何らかのオーバーヘッドが発生すると想定しています。ただし、このオーバーヘッドの影響は、特定の仮想化に応じて異なることは理解しています。

私は開発者のセットアップとしてこれを検討しています。macOS をさまざまな用途に使用したいのですが、主に Docker を使用する作業の一部に Ubuntu (または他の Linux) を使用すれば、マシンのハードウェア機能を最大限に活用できるのではないかと考えています。

※「最近」とは、おおよそ 2014 年以降現在までを指します。

答え1

Docker は Linux 上で最も速く動作します。macOS では Docker が Linux をエミュレートする必要があるため、Linux をシャットダウンする必要があるため、起動と再起動に時間がかかります。ちなみに、Windows でも同じことが言えます。Windows では、Docker は実行が遅いだけでなく、起動も非常に遅く、再起動もさらに遅く、私の経験では (YMMV) 非常に不安定です。

関連情報