2019年02月05日 05時00分 公開
特集/連載

個々の機能や特性を比べるDockerと仮想マシンを比較 アプリ開発環境で使うなら?

仮想マシン(VM)とコンテナには技術的に大きな違いがある。コンテナを選ぶ開発者が多いのは、コンテナの方により整合性があると考えているためだ。

[Chris Riley,TechTarget]
画像 アプリケーション開発にふさわしい仮想化技術とは?

 「Docker」を導入したエンジニアは、任意のスタックのインスタンスを迅速にプロビジョニングできることに感心する。やがて、そのエンジニアはふと考える。「これは既に仮想マシン(VM)で経験したことではなかったか」

 コンテナによって、アプリケーションのプロビジョニング・導入・移行が素早くできるようになる。だが、スタックのコンテナ化にまつわる基本的な考え方は新しいものではない。信頼性の高いVMなら、コンテナで可能なことを技術的には全て実現できる。例えばスタック全体のコンパートメント化、移植、フルスタックの導入などが可能になる。

 開発者の間でVMがコンテナほど普及しなかったのは、VMの提供方法と実際の機能を比べた結果ではないだろうか。つまり、実際には文化面でも技術面でもVMよりコンテナが好まれている可能性がある。

技術面の比較

 DockerコンテナとVMの違いを理解するため、まずは技術面を見てみよう。

ITmedia マーケティング新着記事

news110.jpg

マーケティングと営業の連携、施策投下数を最優先させた「失敗体験の蓄積」という考え方――Chatwork
日本最大級のビジネスチャット「Chatwork」を提供するChatworkのMAツール活用について聞...

news143.jpg

Accenture調査から見えた2020年の5つのテクノロジートレンド
「テック・クラッシュ」を乗り切るにはどうすればいいのか。AccentureのCEOおよびCTOの記...