コンテナー エントリ ポイントは、コンテナーの起動時に実行するように構成されたプロセスです。
[前提条件]
- Docker Desktop または Podman Desktop。
- Visual Studio、または Podman サポートの場合は、ASP.NET と Web 開発、Azure 開発ワークロード、.NET デスクトップ開発ワークロードがインストールされた Visual Studio 2026。
[前提条件]
- Docker Desktop。
- ASP.NET と Web 開発、Azure 開発ワークロード、.NET デスクトップ開発ワークロードがインストールされている Visual Studio。
プロジェクトの種類別のエントリ ポイント
Visual Studio では、プロジェクトの種類とコンテナー オペレーティング システムに応じてカスタム コンテナー エントリ ポイントが使用されます。次に、さまざまな組み合わせを示します。
| コンテナーの種類 | 入口 |
|---|---|
| Linux コンテナー | .NET 6 以降の場合、エントリ ポイントは dotnet --roll-forward Major /VSTools/DistrolessHelper/DistrolessHelper.dll --wait。 .NET 5 以前の場合、エントリ ポイントは tail -f /dev/null。 これらのプロセスでは、無限待機を使用して、アプリが実行されていないときにコンテナーを実行し続けます。 デバッグの有無にかかわらず、アプリが起動されると、アプリを実行し (つまり、dotnet webapp.dll) コンテナーを実行し続けるのはデバッガーです。 |
| Windows コンテナー | エントリ ポイントは、デバッガーを実行する C:\remote_debugger\x64\msvsmon.exe /noauth /anyuser /silent /nostatus のようなものであるため、接続をリッスンしています。 .NET Framework Web アプリの場合、エントリ ポイントは、コマンドに ServiceMonitor を追加することで若干異なります。 |
| コンテナーの種類 | 入口 |
|---|---|
| Linux コンテナー | .NET 6 以降の場合、エントリ ポイントは dotnet --roll-forward Major /VSTools/DistrolessHelper/DistrolessHelper.dll --wait。 .NET 5 以前の場合、エントリ ポイントは tail -f /dev/null。 これらのプロセスでは、無限待機を使用して、アプリが実行されていないときにコンテナーを実行し続けます。 デバッグの有無にかかわらず、アプリが起動されると、アプリを実行するのはデバッガー (つまり、 dotnet webapp.dll) です。
DistrolessHelper はアプリ プロセスを監視し、アプリ プロセスの終了時にアプリの終了コードで終了します。 |
| Windows コンテナー | エントリ ポイントは、デバッガーを実行する C:\remote_debugger\x64\msvsmon.exe /noauth /anyuser /silent /nostatus のようなものであるため、接続をリッスンしています。 |
コンテナー エントリ ポイントは Docker Compose プロジェクトでのみ変更でき、単一コンテナー プロジェクトでは変更できません。 「Docker Compose のプロパティ - アプリのスタートアップ プロセスをカスタマイズする」を参照してください。
関連コンテンツ
- コンテナー プロジェクト の MSBuild プロパティについて。
- MSBuild
- Windows 上の Dockerfile
- Windows における Linux コンテナー