質問: dockerは仮想マシンとどう違うのですか? dockerとフルvmの違いを理解するために、 dockerのドキュメント を読み直してください。それほど重くならずに、どのようにして完全なファイルシステム、分離されたネットワーク環境などを提供することができますか?一貫性のある運用環境に単純に展開するよりも、dockerイメージにソフトウェアを展開すること(正しい用語であれば)が簡単なのはなぜですか?
回答: 違いについてもっと詳しく説明する多くの答えがありますが、ここに私の非常に簡単な説明があります。1つの重要な違いは、 vmはos を実行するために別のカーネルを使用することです。これが、それが重くて起動に時間がかかり、より多くのシステムリソースを消費する理由です。 dockerでは、コンテナはカーネルをホストと共有します 。それゆえ、それは軽量であり、素早く開始および停止することができる。仮想化では、リソースはセットアップの開始時に割り当てられるため、仮想マシンがアイドル状態のときにリソースが完全には利用されません。 dockerでは、コンテナには固定量のハードウェアリソースが割り当てられず、要件に応じて自由にリソースを使用できるため、スケーラビリティが非常に高くなります。dockerは unionファイルシステムを使用します .. dockerはコピーオンライトテクノロジを使用して、コンテナによって消費されるメモリスペースを削減します。 もっと読む