web-dev-qa-db-ja.com

dockerとVM Virtualbox(Hyper-Vの問題)の使用方法

Dockerと仮想マシンは初めてです。 DockerをWindows10に初めてインストールすると、Hyper-Vを有効にする必要があると警告されました。 Hyper-Vが何であるかはよくわかりませんが、仮想化に関係していると思いますので、準拠しました。ただし、一部のツールではLinux環境を使用する必要があるため、OracleのVM Virtualboxを使用しています。そこでVMを実行しようとすると、ブルースクリーンを検索したところ、これを防ぐために Hyper-Vを無効にする必要がありました 。そうしましたが、Hyper-Vの前提条件がないため、dockerが起動しません。有効。

妥協点は何ですか? Dockerと同様にVirtualboxを使用するにはどうすればよいですか?

2
Bram Vanroy

妥協点はありません。

Hyper-VとVirtualBoxはどちらもまったく同じことをします。システム上の別のOSを仮想化します。

DockerはHyper-Vサブシステムを使用して、Dockerアプリケーションが実行される仮想環境を作成するため、Hyper-Vをアクティブにする必要があります。

では、なぜHyper-VとVirtualBoxの両方を同時にアクティブにできないのでしょうか。

仮想化の問題はパフォーマンスです。コンピュータをエミュレートすることを考えると、完全なソフトウェアエミュレーションは非常に遅いです。したがって、これに対抗するために、仮想化ソフトウェアはシステムのハードウェアと直接通信します。これを可能にするには、BIOSでvtxを有効にする必要があります。これらの一連の命令により、仮想化ソフトウェアはCPUやグラフィックカードなどの主要コンポーネントと直接通信して、パフォーマンスを高く保つことができます。問題は、これがデバイス専用であるということです。ハードウェアに対するクレームが行われると、他のソフトウェアはクレームを取得できなくなります。そのため、VirtualBoxとHyper-Vは並行して実行されません。

本当に私にできることは何もありませんか?

そうですね、Hyper-V内でVirtualBoxを再作成できます。 Dockerの使用中にHyper-V VMをアクティブにすることができるため、この問題を解決する方法(おそらく唯一の方法)です。ただし、Hyper-VとVirtualBoxを同時に使用することはできません。時間。

2
LPChip