Docker と仮想マシンの主な違い:
Docker は、開発者がアプリケーションと依存関係をパッケージ化できるオープンソースのアプリケーション コンテナ エンジンです。これらはポータブル コンテナにパッケージ化され、一般的な Linux マシンに配布され、仮想化も可能です。コンテナーは完全にサンドボックス メカニズムを使用し、相互にインターフェイスを持ちません。
仮想マシン (仮想マシン) は、ソフトウェアによってシミュレートされ、完全に分離された環境で実行される完全なハードウェア システム機能を備えた完全なコンピューター システムを指します。
仮想マシンとコンテナの違い
起動時間: Docker は数秒で起動し、仮想マシンは数分で起動します。
軽量: Docker イメージのサイズは通常 M 単位で、仮想マシンのサイズは G 単位です。コンテナーは占有するリソースが小さく、仮想マシンよりも迅速にデプロイできます。
パフォーマンス: Docker はホスト カーネルを共有し、システム レベルの仮想化を行い、使用するリソースが少なく、ハイパーバイザー層のオーバーヘッドがなく、基本的に物理マシンのパフォーマンスに近いです。仮想マシンにはハイパーバイザー層のサポートが必要です。 、一部のデバイスを仮想化し、完全な GuestOS を備えています。仮想化のオーバーヘッドが大きいため、パフォーマンスが低下し、コンテナーのパフォーマンスほど良くありません。
セキュリティ: ホスト カーネルは共有されるため、プロセス レベルでのみ分離されるため、分離性と安定性は仮想マシンほど良くありません。Docker にはホスト カーネルにアクセスするための特定の権限があります。一定のセキュリティリスクが生じます。
使用要件: VM はハードウェアに基づいて完全に仮想化されており、ハードウェア CPU 仮想化テクノロジのサポートが必要です。Docker はホスト カーネルを共有し、CPU が仮想化テクノロジをサポートしているかどうかに関係なく、主流の Linux ディストリビューション上で実行できます。
その他の関連チュートリアルについては、PHP 中国語 Web サイトの docker チュートリアル 列に注目してください。
以上がDocker と仮想マシンの主な違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。