Docker は仮想マシンの概念に似ていますが、次のように仮想化テクノロジとはいくつかの違いがあります。
(推奨学習: docker チュートリアル)
1. 仮想化テクノロジは物理 CPU とメモリに依存し、ハードウェア レベルです。一方、Docker はオペレーティング システム上に構築され、オペレーティング システムのコンテナ化テクノロジを使用するため、Docker はオペレーティング システム上で実行することもできます。仮想マシン;
2. 仮想化システムは通常、比較的複雑で「システム」と呼ばれるオペレーティング システム イメージを指しますが、Docker はオープン ソースで軽量であり「コンテナ」と呼ばれます。 Redis、A memcached のデプロイなど、少数のアプリケーションのデプロイに適しています;
3. 従来の仮想化テクノロジは、スナップショットを使用して状態を保存します。Docker は、状態の保存において移植性が高く、コストが低いだけでなく、また、コンテナのスナップショット履歴を保存するための同様のソース コード管理メカニズムも導入されています。バージョンは 1 つずつ記録され、スイッチング コストは非常に低くなります。
4. 従来の仮想化テクノロジは、システム構築時により複雑です。多くの人力が必要ですが、docker は Dockfile を通じてコンテナ全体をビルドできるため、再起動とビルドがすぐに速くなります。さらに重要なのは、Dockfile は手動で作成できるため、アプリケーション開発者は Dockfile を公開することでシステム環境と依存関係をガイドできるため、継続的デリバリーにとって非常に有益です。コンテナイメージ 新しいコンテナを作成します。 Dockerfile はコミュニティを通じて共有およびダウンロードできるため、このテクノロジーの推進に役立ちます。
Docker はポータブル コンテナ エンジンのように動作します。アプリケーションとすべてのプログラムの依存環境を仮想コンテナにパッケージ化し、あらゆる種類の Linux サーバー上で実行できます。これにより、許可が必要かどうか、パブリッククラウドかプライベートクラウドか、ベアメタル環境かなどに関わらず、プログラム運用の柔軟性と移植性が大幅に向上します。
以上がDocker と従来の仮想化テクノロジーの違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。