アプリケーションの仮想化とDockerがあります

繰り返しのテーマのように見えるもの(私はすぐに離れることを約束します)では、Dockerが何ではないかについて話すことに時間を費やします–Dockerはアプリケーションの仮想化ではありません。

私はVMwareでかなりの時間を過ごし、VMware View(Horizon ViewはHorizon 7をBegage)に取り組んでいたので、デスクトップとアプリケーションの仮想化に少し精通しています。 そして、アプリケーションの移植性のためにDockerを活用することについて私たちが最初に話すのを聞いたとき、App-V、XenApp、またはThinAppの線に沿って考える人がいる理由を理解しています。

昨日、最新のソフトウェアサプライチェーンがDockerでどのように実行されるかについて話しましたが、その投稿では、Dockerユーザーの41%がアプリケーションの移植性をコアユースケースとしてターゲットにしていることに気づきました。

アプリ仮想化ドッカー 1
Dockerに参加する前に、「アプリケーションの移植性」と聞いたら、すぐにThinAppを思い浮かべたでしょう(主にVMwareの遺産に基づいています)。 従来のサーバーベースおよびデスクトップコンピューティングで働く多くの人にとって、このフレーズは、「DLL地獄」などの一般的な落とし穴に遭遇することなく、アプリケーションをシームレスに配信する機能を意味します。 これは、App-VやThinAppのようなものを使用して、アプリケーションと必要なすべてのDLLを含むサンドボックス内にアプリケーションを配置することを意味する場合があります。 または、サーバー上でアプリケーションをホストし、Citrix XanAppまたはMicrosoftのRemoteAppを介してリモートで提供することを意味する場合もあります。アプリケーション仮想化ターゲットの一般的な例には、カスタム拡張機能を備えたIE6、Microsoft Word、Excelなどがあります。

したがって、これらのアプリケーション仮想化ソリューションとDockerの間には、いくつかの共通の概念的根拠があります。 しかし、いくつかの重要な違いもあります。

以前にも書いたように、Dockerは歴史的な意味での仮想化テクノロジーではなく、アプリケーション配信プラットフォームです。 Docker を使用すると、従来のモノリシック アプリケーションを再利用可能なマイクロサービスのセットとして配信できます。

この投稿で言及したすべてのツールは、実際にはレガシーWindowsデスクトップアプリケーションを提供することを目的としています。 これらのアプリケーションは、独自のGUIを含むという点でモノリシックです(ブラウザを介してアクセスされるWebアプリケーションとは異なります)。 対照的に、最も広く使用されているDockerワークロードは、マルチ/マイクロサービスWebアプリです。

したがって、はい、Dockerコンテナはサービスを実行するために必要なすべてのコードとライブラリをカプセル化します。 ただし、これらのサービスは、従来のアプリケーション仮想化テクノロジを介して提供されるアプリケーションとは根本的に異なります。

結局のところ、Dockerはアプリケーションの仮想化を直接置き換えるものではありません。 これは、app virt テクノロジーを使用してデプロイされたアプリケーションの多くを取得し、より高いレベルの俊敏性、移植性、および制御を提供する方法でそれらを再作成する方法です。


ドッカーについてもっと知る