ホームページ  >  記事  >  運用・保守  >  Docker と仮想マシンの主な違い

Docker と仮想マシンの主な違い

尚
オリジナル
2020-03-31 15:50:1313633ブラウズ

Docker と仮想マシンの主な違い

Docker と仮想マシンの主な違い:

Docker は、開発者がアプリケーションと依存関係をパッケージ化できるオープンソースのアプリケーション コンテナ エンジンです。これらはポータブル コンテナにパッケージ化され、一般的な Linux マシンに配布され、仮想化も可能です。コンテナーは完全にサンドボックス メカニズムを使用し、相互にインターフェイスを持ちません。

仮想マシン (仮想マシン) は、ソフトウェアによってシミュレートされ、完全に分離された環境で実行される完全なハードウェア システム機能を備えた完全なコンピューター システムを指します。

仮想マシンとコンテナの違い

起動時間: Docker は数秒で起動し、仮想マシンは数分で起動します。

軽量: Docker イメージのサイズは通常 M 単位で、仮想マシンのサイズは G 単位です。コンテナーは占有するリソースが小さく、仮想マシンよりも迅速にデプロイできます。

パフォーマンス: Docker はホスト カーネルを共有し、システム レベルの仮想化を行い、使用するリソースが少なく、ハイパーバイザー層のオーバーヘッドがなく、基本的に物理マシンのパフォーマンスに近いです。仮想マシンにはハイパーバイザー層のサポートが必要です。 、一部のデバイスを仮想化し、完全な GuestOS を備えています。仮想化のオーバーヘッドが大きいため、パフォーマンスが低下し、コンテナーのパフォーマンスほど良くありません。

セキュリティ: ホスト カーネルは共有されるため、プロセス レベルでのみ分離されるため、分離性と安定性は仮想マシンほど良くありません。Docker にはホスト カーネルにアクセスするための特定の権限があります。一定のセキュリティリスクが生じます。

使用要件: VM はハードウェアに基づいて完全に仮想化されており、ハードウェア CPU 仮想化テクノロジのサポートが必要です。Docker はホスト カーネルを共有し、CPU が仮想化テクノロジをサポートしているかどうかに関係なく、主流の Linux ディストリビューション上で実行できます。

その他の関連チュートリアルについては、PHP 中国語 Web サイトの docker チュートリアル 列に注目してください。

以上がDocker と仮想マシンの主な違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。