共用方式為


應用程式主機設定

應用程式主機項目會設定並啟動分散式應用程式 (DistributedApplication)。 當 DistributedApplication 執行時,它會從應用程式主機讀取設定。 組態會從應用程式主機上設定的環境變數載入,並 DistributedApplicationOptions

組態包括:

  • 裝載資源服務的設定,例如地址和驗證選項。
  • 用來啟動 .NET.NET Aspire 儀錶板的設定,例如儀錶板的前端和 OpenTelemetry 通訊協定 (OTLP) 位址。
  • .NET .NET Aspire 用來執行應用程式主機的內部設定。 這些是在內部設定,但可以透過擴充 .NET.NET Aspire的整合來存取。

應用程式主機設定是由應用程式主機啟動配置檔所提供。 應用程式主機具有啟動配置檔清單 launchSettings.json 啟動設定檔的啟動配置檔呼叫。 每個啟動配置檔都是相關選項的集合,可定義您想要如何 dotnet 啟動應用程式。

{
  "$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",
        "DOTNET_DASHBOARD_OTLP_ENDPOINT_URL": "https://localhost:21030",
        "DOTNET_RESOURCE_SERVICE_ENDPOINT_URL": "https://localhost:22057"
      }
    }
  }
}

上述啟動設定檔:

  • 有一個名為 https的啟動配置檔。
  • 設定 .NET.NET Aspire 應用程式主機專案:
    • applicationUrl 屬性會設定儀錶板啟動位址 (ASPNETCORE_URLS)。
    • 應用程式主機上會設定 DOTNET_DASHBOARD_OTLP_ENDPOINT_URLDOTNET_RESOURCE_SERVICE_ENDPOINT_URL 等環境變數。

如需詳細資訊,請參閱 和啟動配置檔。

注意

這個頁面所述的設定適用於 .NET.NET Aspire 應用程式主機專案。 若要設定獨立儀錶板,請參閱 儀錶板組態

一般設定

選擇 預設值 描述
ASPIRE_ALLOW_UNSECURED_TRANSPORT false 允許與沒有 HTTPs 的應用程式主機通訊。 ASPNETCORE_URLS(儀錶板位址)和 DOTNET_RESOURCE_SERVICE_ENDPOINT_URL(應用程式主機資源服務地址)必須受到 HTTPS 保護,除非為 true。
DOTNET_ASPIRE_CONTAINER_RUNTIME docker 可讓使用者針對容器所支援的資源使用替代容器運行時間。 可能的值為 docker (預設值) 或 podman。 如需詳細資訊,請參閱 安裝和工具概觀。

資源服務

資源服務是由應用程式主機所裝載。 儀錶板會使用資源服務來擷取 .NET.NET Aspire所協調之資源的相關信息。

選擇 預設值 描述
DOTNET_RESOURCE_SERVICE_ENDPOINT_URL null 設定應用程式主機所裝載之資源服務的位址。 使用 launchSettings.json 自動產生,在 localhost上具有隨機埠。 例如,https://localhost:17037
DOTNET_DASHBOARD_RESOURCESERVICE_APIKEY 自動產生 128 位的 entropy Token。 用來驗證對應用程式主機資源服務提出要求的 API 金鑰。 如果應用程式主機處於執行模式、儀錶板未停用,且儀錶板未設定為允許使用 DOTNET_DASHBOARD_UNSECURED_ALLOW_ANONYMOUS匿名存取,則需要 API 金鑰。

擋泥板

根據預設,儀錶板會自動由應用程式主機啟動。 儀錶板支援 自己的組態,而且可以從應用程式主機設定某些設定。

選擇 預設值 描述
ASPNETCORE_URLS null 儀錶板位址。 除非 httpsASPIRE_ALLOW_UNSECURED_TRANSPORT 為 true,否則必須 DistributedApplicationOptions.AllowUnsecuredTransport。 使用 launchSettings.json 自動產生,在 localhost上具有隨機埠。 啟動設定中的值是在 applicationUrls 屬性上設定。
ASPNETCORE_ENVIRONMENT Production 設定儀錶板執行的環境。 如需詳細資訊,請參閱 在 ASP.NET Core中使用多個環境。
DOTNET_DASHBOARD_OTLP_ENDPOINT_URL 如果未設定任何 gRPC 端點,http://localhost:18889 設定儀錶板 OTLP gRPC 位址。 儀錶板用來透過OTLP接收遙測。 在資源上設定為 OTEL_EXPORTER_OTLP_ENDPOINT env var。 OTEL_EXPORTER_OTLP_PROTOCOL env var 是 grpc。 使用 launchSettings.json 自動產生,在 localhost上具有隨機埠。
DOTNET_DASHBOARD_OTLP_HTTP_ENDPOINT_URL null 設定儀錶板 OTLP HTTP 位址。 儀錶板用來透過OTLP接收遙測。 如果只設定 DOTNET_DASHBOARD_OTLP_HTTP_ENDPOINT_URL,則會在資源上設定為 OTEL_EXPORTER_OTLP_ENDPOINT env var。 OTEL_EXPORTER_OTLP_PROTOCOL env var 是 http/protobuf
DOTNET_DASHBOARD_FRONTEND_BROWSERTOKEN 自動產生 128 位的 entropy Token。 設定前端瀏覽器令牌。 這是在驗證模式為 BrowserToken 時必須輸入才能存取儀錶板的值。 如果未指定瀏覽器令牌,則每次啟動應用程式主機時都會產生新的令牌。

內部

應用程式主機和整合會使用內部設定。 內部設定並非設計為直接設定。

選擇 預設值 描述
AppHost:Directory 如果沒有專案,則為內容根目錄。 應用程式主機所在的項目目錄。 可從 IDistributedApplicationBuilder.AppHostDirectory存取。
AppHost:Path 與應用程式名稱結合的目錄。 應用程式主機的路徑。 它會結合目錄與應用程式名稱。
AppHost:Sha256 當應用程式主機處於發佈模式時,它會從應用程式主機名建立。 否則,它會從應用程式主機路徑建立。 目前應用程式的十六進位編碼哈希。 哈希是以目前計算機上應用程式的位置為基礎,因此在啟動應用程式主機之間穩定。
AppHost:OtlpApiKey 自動產生 128 位的 entropy Token。 用來驗證傳送至儀錶板 OTLP 服務之要求的 API 金鑰。 如有需要,就會顯示此值:應用程式主機處於執行模式、儀錶板未停用,且儀錶板未設定為允許使用 DOTNET_DASHBOARD_UNSECURED_ALLOW_ANONYMOUS匿名存取。
AppHost:BrowserToken 自動產生 128 位的 entropy Token。 瀏覽器令牌,用來在應用程式主機啟動時驗證流覽至儀錶板。 瀏覽器令牌可以透過 DOTNET_DASHBOARD_FRONTEND_BROWSERTOKEN來設定。 如有需要,就會顯示此值:應用程式主機處於執行模式、儀錶板未停用,且儀錶板未設定為允許使用 DOTNET_DASHBOARD_UNSECURED_ALLOW_ANONYMOUS匿名存取。
AppHost:ResourceService:AuthMode ApiKey。 如果 DOTNET_DASHBOARD_UNSECURED_ALLOW_ANONYMOUS 為 true,則值為 Unsecured 用來存取資源服務的驗證模式。 如有需要,就會顯示此值:應用程式主機處於執行模式,且儀錶板未停用。
AppHost:ResourceService:ApiKey 自動產生 128 位的 entropy Token。 用來驗證對應用程式主機資源服務提出要求的 API 金鑰。 API 金鑰可以透過 DOTNET_DASHBOARD_RESOURCESERVICE_APIKEY來設定。 如有需要,就會顯示此值:應用程式主機處於執行模式、儀錶板未停用,且儀錶板未設定為允許使用 DOTNET_DASHBOARD_UNSECURED_ALLOW_ANONYMOUS匿名存取。