ヒント
このコンテンツは、.NET Docs で入手できる、またはオフラインで読み取ることができる無料のダウンロード可能な PDF として入手できる、コンテナー化された .NET アプリケーションの電子ブックである .NET マイクロサービス アーキテクチャからの抜粋です。
このセクションでは、.NET 8 または .NET Framework を選択するタイミングの概要を示します。 これらの選択肢の詳細については、以下のセクションで説明します。
次の場合は、コンテナー化された Docker サーバー アプリケーションに対して、Linux または Windows コンテナーで .NET 8 を使用します。
貴社にはクロスプラットフォームのニーズがあります。 たとえば、Linux コンテナーと Windows コンテナーの両方を使用するとします。
アプリケーション アーキテクチャはマイクロサービスに基づいています。
コストを削減するために、コンテナーをすばやく起動し、コンテナーあたりのフットプリントを小さくし、ハードウェア ユニットあたりの密度を向上させるか、またはコンテナーを増やす必要があります。
つまり、コンテナー化された新しい .NET アプリケーションを作成するときは、既定の選択肢として .NET 8 を検討する必要があります。 それは多くの利点を持ち、コンテナの哲学と働くスタイルに最適です。
.NET 8 を使用する追加の利点は、同じコンピューター内のアプリケーションに対してサイド バイ サイドの .NET バージョンを実行できることです。 コンテナーはアプリに必要な .NET のバージョンを分離するため、コンテナーを使用しないサーバーまたは VM では、この利点がより重要になります。 (基になる OS と互換性がある限り)。
次の場合は、コンテナー化された Docker サーバー アプリケーションに .NET Framework を使用します。
現在、アプリケーションは .NET Framework を使用しており、Windows に強い依存関係があります。
.NET 8 でサポートされていない Windows API を使用する必要があります。
.NET 8 では使用できないサードパーティの .NET ライブラリまたは NuGet パッケージを使用する必要があります。
Docker で .NET Framework を使用すると、デプロイの問題を最小限に抑えることで、デプロイ エクスペリエンスを向上させることができます。 この "リフト アンド シフト" シナリオ は、ASP.NET WebForms、MVC Web アプリ、WCF (Windows Communication Foundation) サービスなど、従来の .NET Framework で最初に開発されたレガシ アプリケーションをコンテナー化するために重要です。
その他のリソース
電子書籍: Azure および Windows コンテナーを使用して既存の .NET Framework アプリケーションを最新化する
https://aka.ms/liftandshiftwithcontainersebookサンプル アプリ: Windows コンテナーを使用したレガシ ASP.NET Web アプリの最新化
https://aka.ms/eshopmodernizing
.NET