VM や VDI 環境で Docker Desktop for Window を実行¶
Docker は一般的に、 Mac、 Linux、Windows 上のどれかでネイティブに Docker Desktop を実行するのを推奨します。ですが、仮想デスクトップが適切に設定されている仮想デスクトップ内で Docker Desktop for Linux を実行できます。
仮想デスクトップ環境内で Docker Desktop を実行するには、仮想デスクトップを提供する仮想マシン上で、
仮想デスクトップのサポート¶
注釈
Docker ビジネス利用者のために、 VMware ESXi や Azure VM 内での Docker Desktop 実行がサポートされています。
ネスト化された仮想化が正しくセットアップされていれば、仮想マシン内で実行している Docker Desktop のインストールと実行まで Docker から利用可能なサポートが拡大されます。既にテストに成功しているハイパーバイザは VMware ESXi と azure のみです。他の仮想マシンは一切サポートされません。Docker Desktop のサポートについての詳しい情報は、 サポートを受ける をご覧ください。
Docker が管理している以外の問題や継続的な障害のトラブルシュートには、ハイパーバイザの提供事業者に連絡すべきです。各ハイパーバイザのベンダは、様々なレベルのサポートを提供しています。たとえば、 Microsoft はオンプレミス上と Azure 上のどちらでもネスト化された Hyper-V の実行をサポートしています。VMWare ESXi では、これがあてはまらない場合があります。
ネスト化された仮想化の有効化¶
仮想マシン上に Docker Desktop をインストールする前に、ネスト化された仮想化の有効化が必要です。
VMware ESXi 上でネスト化された仮想化を有効化¶
vSphere VM 内では、 Hyper-V のような他のハイパーバイザによるネスト化された仮想化は サポートされていないシナリオ です。しかしながら、VMware ESXi VM 内で Hyper-V VM の実行は、技術的には可能で、バージョンに依存しますが ESXi にはハードウェア支援による仮想化もサポートされている機能です。内部のテストで使った VM は、4コア の 1 CPU と 12GB のメモリでした。
ハードウェア支援による仮想化をゲスト OS に公開する手順は、 VMware のドキュメントをご覧ください 。
また、 いくつかのネットワーク設定の調整 も必要です。
Microsoft Hyper-V 上でネスト化された仮想化を有効化¶
Azure VM 内で Hyper-V を実行するにあたり、ネスト化された仮想化は Microsoft によってサポートされています。
Azure 仮想マシンでは、 選んだ VM サイズがネスト化された仮想化をサポートしているかどうか確認します 。Microsoft は Azure VM サイズに役立つリストを提供し 、ネスト化された仮想化を現時点でサポートしているサイズを強調表示しています。内部テストでは D4s_v5 マシンを使いました。Docker Desktop のパフォーマンスを最適化するため、この仕様以上を推奨します。
参考
- Run Docker Desktop for Windows in a VM or VDI environment