
説明

ボックス1:microsoft.com/dotnet/sdk:2.3
行の最初のグループは、その上にコンテナを構築するために使用するベースイメージを宣言します。ローカルシステムにこのイメージがまだない場合、dockerは自動的にイメージをフェッチしようとします。mcr.microsoft.com/dotnet/core/sdk:2.1は、.NET Core 2.1 SDKがインストールされた状態でパッケージ化されているため、バージョン2.1を対象とするASP .NETコアプロジェクトを構築するタスクがあります。ボックス2:dotnetrestore次の手順の変更コンテナ内の作業ディレクトリは/appであるため、これに続くすべてのコマンドはこのコンテキストで実行されます。
コピー*.csproj./
dotnetrestoreを実行する
ボックス3:microsoft.com/dotnet/2.2-aspnetcore-runtime
コンテナイメージを構築するときは、本番ペイロードとその依存関係のみをコンテナイメージに含めることをお勧めします。.NETコアランタイムのみが必要なため、最終イメージに.NETコアSDKを含めたくないため、dockerfileは、build-envと呼ばれるSDKにパッケージ化された一時コンテナーを使用してアプリをビルドするように記述されています。
参照:
https://docs.microsoft.com/de-DE/virtualization/windowscontainers/quick-start/building-sample-app