AppHost 設定
AppHost プロジェクトは、分散アプリケーションを設定して起動します。設定には、リソースサービス、Aspire ダッシュボード、および統合によって使用される内部設定が含まれます。
AppHost 設定は起動プロファイルを通じて提供されます:
C# AppHost では、プロファイルは launchSettings.json に存在します:
{ "$schema": "https://json.schemastore.org/launchsettings.json", "profiles": { "https": { "commandName": "Project", "dotnetRunMessages": true, "launchBrowser": true, "applicationUrl": "https://localhost:17134;http://localhost:15170", "environmentVariables": { "ASPNETCORE_ENVIRONMENT": "Development", "DOTNET_ENVIRONMENT": "Development", "ASPIRE_DASHBOARD_OTLP_ENDPOINT_URL": "https://localhost:21030", "ASPIRE_RESOURCE_SERVICE_ENDPOINT_URL": "https://localhost:22057" } } }}TypeScript AppHost では、プロファイルは aspire.config.json に存在します:
{ "appHost": { "path": "apphost.mts", "language": "typescript/nodejs" }, "profiles": { "https": { "applicationUrl": "https://localhost:17134;http://localhost:15170", "environmentVariables": { "ASPIRE_DASHBOARD_OTLP_ENDPOINT_URL": "https://localhost:21030", "ASPIRE_RESOURCE_SERVICE_ENDPOINT_URL": "https://localhost:22057" } } }}| オプション | 既定値 | 詳細 |
|---|---|---|
ASPIRE_ALLOW_UNSECURED_TRANSPORT | false | AppHost との HTTPS なし通信を許可します。ASPNETCORE_URLS(ダッシュボードアドレス)と ASPIRE_RESOURCE_SERVICE_ENDPOINT_URL(AppHost リソースサービスアドレス)は、true でない限り HTTPS で保護する必要があります。 |
ASPIRE_CONTAINER_RUNTIME | docker | コンテナでサポートされているリソースに対して、代替コンテナランタイムの使用を許可します。可能な値は docker(既定値)または podman です。 |
ASPIRE_DCP_USE_DEVELOPER_CERTIFICATE | false | true に設定すると、Aspire は DCP によって生成されたエフェメラル証明書の代わりに、信頼されたデベロッパー証明書を使用して内部 DCP サーバーをセキュアします。これにより、開発証明書がすでに信頼されている場合、証明書信頼の問題を回避できます。信頼されたデベロッパー証明書が見つからない場合、Aspire は DCP によって生成されたエフェメラル証明書にフォールバックします。Windows でのみサポートされています。詳細については、証明書設定を参照してください。 |
ASPIRE_ENVIRONMENT | null | より高い優先度の環境ソースが設定されていない場合、AppHost 環境を設定します。環境が設定されていない場合、AppHost は Production を使用します。 |
ASPIRE_VERSION_CHECK_DISABLED | false | true に設定すると、Aspire は起動時に新しいバージョンをチェックしません。 |
AppHost 環境
Section titled “AppHost 環境”ASPIRE_ENVIRONMENT を使用して、アプリケーションモデルを評価する際に AppHost によって使用される環境名を設定します。優先度は --environment、DOTNET_ENVIRONMENT、ASPIRE_ENVIRONMENT、その後 Production です。これはダッシュボードの ASPNETCORE_ENVIRONMENT を設定したり、自動的に子リソースにフローしたりしません。必要に応じて、リソース上でフレームワーク固有の変数を設定してください。詳細については、Aspire 環境を参照してください。
バージョン更新通知
Section titled “バージョン更新通知”Aspire アプリが起動すると、新しいバージョンの Aspire が NuGet で利用可能かどうかがチェックされます。新しいバージョンが見つかった場合、ダッシュボードに最新のバージョン番号、アップグレード手順へのリンク、および今後そのバージョンを無視するボタンを含む通知が表示されます。

バージョンチェックは、以下の場合にのみ実行されます:
- ダッシュボードが有効(相互作用サービスが利用可能)
- 最後のチェック以来少なくとも 2 日が経過している
- チェックが
ASPIRE_VERSION_CHECK_DISABLED設定を通じて無効になっていない - アプリが発行モードで実行されていない
更新は手動です。Aspire SDK およびパッケージバージョンをアップグレードするには、プロジェクトファイルを編集する必要があります。
リソースサービス
Section titled “リソースサービス”リソースサービスは AppHost によってホストされています。リソースサービスは、Aspire によってオーケストレーションされているリソースに関する情報を取得するためにダッシュボードによって使用されます。
| オプション | 既定値 | 詳細 |
|---|---|---|
ASPIRE_RESOURCE_SERVICE_ENDPOINT_URL | null | AppHost でホストされているリソースサービスのアドレスを設定します。launchSettings.json で自動生成され、localhost 上のランダムなポートを使用します。例: https://localhost:17037。 |
ASPIRE_DASHBOARD_RESOURCESERVICE_APIKEY | 自動生成された 128 ビットエントロピートークン。 | AppHost のリソースサービスに対して行われた要求を認証するために使用される API キー。AppHost が実行モード、ダッシュボードが無効でなく、ダッシュボードが ASPIRE_DASHBOARD_UNSECURED_ALLOW_ANONYMOUS で匿名アクセスを許可するように設定されていない場合、API キーが必要です。 |
ダッシュボード
Section titled “ダッシュボード”既定では、ダッシュボードは AppHost によって自動的に起動されます。ダッシュボードは独自の設定セットをサポートし、一部の設定は AppHost から設定できます。
| オプション | 既定値 | 詳細 |
|---|---|---|
ASPNETCORE_URLS | null | ダッシュボードアドレス。ASPIRE_ALLOW_UNSECURED_TRANSPORT または DistributedApplicationOptions.AllowUnsecuredTransport が true でない限り、https である必要があります。launchSettings.json で自動生成され、localhost 上のランダムなポートを使用します。起動設定の値は applicationUrls プロパティに設定されます。 |
ASPNETCORE_ENVIRONMENT | Production | ダッシュボードが実行される環境を設定します。詳細については、ASP.NET Core で複数の環境を使用するを参照してください。 |
ASPIRE_DASHBOARD_OTLP_ENDPOINT_URL | gRPC エンドポイントが設定されていない場合は http://localhost:18889。 | ダッシュボード OTLP gRPC アドレスを設定します。ダッシュボードが OTLP 経由でテレメトリを受信するために使用されます。リソース上で OTEL_EXPORTER_OTLP_ENDPOINT 環境変数として設定されます。OTEL_EXPORTER_OTLP_PROTOCOL 環境変数は grpc です。launchSettings.json で自動生成され、localhost 上のランダムなポートを使用します。 |
ASPIRE_DASHBOARD_OTLP_HTTP_ENDPOINT_URL | null | ダッシュボード OTLP HTTP アドレスを設定します。ダッシュボードが OTLP 経由でテレメトリを受信するために使用されます。ASPIRE_DASHBOARD_OTLP_HTTP_ENDPOINT_URL のみが設定されている場合、リソース上で OTEL_EXPORTER_OTLP_ENDPOINT 環境変数として設定されます。OTEL_EXPORTER_OTLP_PROTOCOL 環境変数は http/protobuf です。 |
ASPIRE_DASHBOARD_CORS_ALLOWED_ORIGINS | null | ダッシュボードで設定された CORS 許可オリジンをオーバーライドします。この設定は、リソースエンドポイントに基づいて許可オリジンを計算する既定の動作に代わります。 |
ASPIRE_DASHBOARD_UNSECURED_ALLOW_ANONYMOUS | false | ダッシュボードが認証を使用しないように設定し、匿名アクセスを受け入れます。フロントエンド、OTLP、MCP、および API 認証モードを Unsecured に設定します。 |
ASPIRE_DASHBOARD_FRONTEND_BROWSERTOKEN | 自動生成された 128 ビットエントロピートークン。 | フロントエンドブラウザトークンを設定します。これは、認証モードが BrowserToken である場合にダッシュボードにアクセスするために入力する必要がある値です。ブラウザトークンが指定されていない場合、AppHost が起動されるたびに新しいトークンが生成されます。 |
ASPIRE_DASHBOARD_TELEMETRY_OPTOUT | false | ダッシュボードが使用テレメトリを送信しないように設定します。 |
ASPIRE_DASHBOARD_AI_DISABLED | true | 将来の使用のために予約されています。ダッシュボード内の GitHub Copilot UI は Aspire 13.3 で削除されました。AI コーディングエージェントは、Aspire CLI および MCP サーバーを通じてテレメトリデータにアクセスできます。 |
ASPIRE_DASHBOARD_API_ENABLED | true | ダッシュボードテレメトリ API(/api/telemetry/*)エンドポイントを有効にします。AppHost は常にこれを true に設定します。 |
ASPIRE_DASHBOARD_FORWARDEDHEADERS_ENABLED | false | X-Forwarded-Proto および X-Forwarded-Host ヘッダーから来ている値を使用して、Request コンテキストのスキーマとホスト値を置き換える転送ヘッダーミドルウェアを有効にします。 |
内部設定は AppHost と統合によって使用されます。内部設定は直接設定するように設計されていません。
| オプション | 既定値 | 詳細 |
|---|---|---|
AppHost:Directory | プロジェクトがない場合のコンテンツルート。 | AppHost が置かれているプロジェクトのディレクトリ。IDistributedApplicationBuilder.AppHostDirectory からアクセス可能。 |
AppHost:Path | ディレクトリとアプリケーション名を組み合わせたもの。 | AppHost へのパス。ディレクトリをアプリケーション名と組み合わせます。 |
AppHost:Sha256 | AppHost が発行モード時に AppHost 名から作成されます。それ以外の場合は AppHost パスから作成されます。 | 現在のアプリケーションの 16 進エンコードハッシュ。ハッシュは現在のマシン上のアプリケーションの場所に基づいているため、AppHost の起動間で安定しています。 |
AppHost:OtlpApiKey | 自動生成された 128 ビットエントロピートークン。 | ダッシュボード OTLP サービスに送信された要求を認証するために使用される API キー。値は必要な場合に存在します: AppHost が実行モード、ダッシュボードが無効でなく、ダッシュボードが ASPIRE_DASHBOARD_UNSECURED_ALLOW_ANONYMOUS で匿名アクセスを許可するように設定されていません。 |
AppHost:DashboardApiKey | 自動生成された 128 ビットエントロピートークン。 | ダッシュボードテレメトリ API への要求を認証するために使用される API キー。AppHost:McpApiKey が設定されていない場合、MCP 認証のフォールバックとしても使用されます。値は必要な場合に存在します: AppHost が実行モード、ダッシュボードが無効でなく、ダッシュボードが匿名アクセスを許可するように設定されていません。 |
AppHost:BrowserToken | 自動生成された 128 ビットエントロピートークン。 | AppHost によって起動される場合にダッシュボードへのブラウジングを認証するために使用されるブラウザトークン。ブラウザトークンは ASPIRE_DASHBOARD_FRONTEND_BROWSERTOKEN によって設定できます。値は必要な場合に存在します: AppHost が実行モード、ダッシュボードが無効でなく、ダッシュボードが ASPIRE_DASHBOARD_UNSECURED_ALLOW_ANONYMOUS で匿名アクセスを許可するように設定されていません。 |
AppHost:ResourceService:AuthMode | ApiKey。ASPIRE_DASHBOARD_UNSECURED_ALLOW_ANONYMOUS が true の場合、値は Unsecured です。 | リソースサービスへのアクセスに使用される認証モード。値は必要な場合に存在します: AppHost が実行モードで、ダッシュボードが無効でなく。 |
AppHost:ResourceService:ApiKey | 自動生成された 128 ビットエントロピートークン。 | AppHost のリソースサービスに対して行われた要求を認証するために使用される API キー。API キーは ASPIRE_DASHBOARD_RESOURCESERVICE_APIKEY によって設定できます。値は必要な場合に存在します: AppHost が実行モード、ダッシュボードが無効でなく、ダッシュボードが ASPIRE_DASHBOARD_UNSECURED_ALLOW_ANONYMOUS で匿名アクセスを許可するように設定されていません。 |
高度なオーケストレーションプロパティ
Section titled “高度なオーケストレーションプロパティ”DcpCliPath
Section titled “DcpCliPath”DcpCliPath プロパティは、開発者制御プレーン (DCP) 実行可能ファイルへのパスを指定します。DCP は、Aspire が開発中にローカルで分散アプリケーションリソースを実行および管理するために使用するコアオーケストレーションエンジンです。
Aspire SDK を使用する場合、ビルドシステムは自動的に:
- プラットフォーム固有の
Aspire.Hosting.OrchestrationNuGet パッケージ(例:Aspire.Hosting.Orchestration.win-x64)をインポートします。 DcpCliPathをそのパッケージ内のdcp実行可能ファイルを指すように設定します。- このパスをコンパイル済みの AppHost にアセンブリメタデータとして埋め込みます。
実行時に、AppHost はこのメタデータを読み取り、DCP プロセスを見つけて起動し、アプリケーションのリソースをオーケストレーションします。
オーバーライドオプション
Section titled “オーバーライドオプション”まれな場合、既定の DCP パスをオーバーライドする必要があります:
| メソッド | 例 |
|---|---|
| MSBuild プロパティ | <DcpCliPath>C:\path\to\dcp.exe</DcpCliPath> |
| コマンドライン引数 | --dcp-cli-path /path/to/dcp |
| 設定 | DcpPublisher:CliPath |
どういう時に使用するか
Section titled “どういう時に使用するか”これらのシナリオで DcpCliPath をオーバーライドすることができます:
- Aspire 貢献者: Aspire 自体を開発する際に、DCP のカスタムまたはデバッグビルドでテストします。
- CI/CD パイプライン: 自動検出が機能しない非標準 SDK レイアウト。
- トラブルシューティング: 特定の DCP バージョンを一時的に指す際に問題を診断します。