Dockerの概要と普及した背景#
Dockerとは、「コンテナ型仮想化技術」を使って、アプリケーションと 実行環境をパッケージ化し、どこでも同じ環境を簡単に配布・実行できるようにするプラットフォームです。
Dockerは非常に有名なプラットフォームですが、普及した背景は 利便性、エコシステムなどがあります。
- 利便性
docker runコマンドで簡単に環境構築可能- Dockerfileで簡単に配布可能
- エコシステム
- Docker Hubという大規模なコミュニティ
LXCなどの他のコンテナ技術よりも上記のポイントを実現・改善したことで Dockerは普及したといえます。
コンテナ技術が普及した背景#
Dockerなどコンテナ技術関連のプラットフォームは普及しましたが、 従来のVM(仮想マシン)と比較してどのような点が優れていたか整理します。 コンテナ技術が従来のVMよりも優れていた点は「軽量でリソース効率が高い」「運用・管理面がシンプル」です。 コンテナ技術ではホストOSのカーネルを共有することによって、OS分のオーバーヘッドが不要で、 管理対象のイメージも少なくて済みますが、従来のVMでは、ゲストOSのためのオーバーヘッドが 必要となります。そのため、リソース効率などの点でコンテナ技術が優れています。
まとめ#
Dockerとは、コンテナ型仮想化技術のプラットフォームであり、 利便性とエコシステムにより、他のコンテナ型仮想化技術よりも普及しました。 Virtual BoxやVMwareなどの従来のVMよりもリソース効率などの面でコンテナ技術が優れていることから 現代ではコンテナ技術が大きく普及することになりました。
振り返りポイント#
- Dockerとは?
- Dockerが他の「コンテナ型仮想化技術」よりも優れているポイントは?
- コンテナ型仮想化技術が従来のVMよりも優れているポイントは?
- また、優れている理由は?