共用方式為


AppHost 組態

AppHost 專案會設定並啟動分散式應用程式 (DistributedApplication)。 當運行時, DistributedApplication 它會從 AppHost 讀取配置。 組態是從 AppHost 上設定的環境變數載入,以及 DistributedApplicationOptions

配置包括:

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

AppHost 組態由 AppHost 啟動設定檔提供。 AppHost 有一個啟動設定檔案呼叫 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",
        "ASPIRE_DASHBOARD_OTLP_ENDPOINT_URL": "https://localhost:21030",
        "ASPIRE_RESOURCE_SERVICE_ENDPOINT_URL": "https://localhost:22057"
      }
    }
  }
}

上述啟動設定檔:

  • 有一個名為 https的啟動配置檔。
  • 設定 Aspire AppHost 專案:
    • applicationUrl 屬性會設定儀錶板啟動位址 (ASPNETCORE_URLS)。
    • 環境變數 (例如 ASPIRE_DASHBOARD_OTLP_ENDPOINT_URL 和 ) ASPIRE_RESOURCE_SERVICE_ENDPOINT_URL 是在 AppHost 上設定的。

如需詳細資訊,請參閱 Aspire 並啟動設定檔

Note

本頁所述的配置適用於 Aspire AppHost專案。 若要設定獨立儀錶板,請參閱 儀錶板組態

一般組態

Option 預設值 Description
ASPIRE_ALLOW_UNSECURED_TRANSPORT false 允許在沒有 https 的情況下與 AppHost 進行通信。 ASPNETCORE_URLS (儀表板位址) 和 ASPIRE_RESOURCE_SERVICE_ENDPOINT_URL (AppHost 資源服務位址) 必須使用 HTTPS 保護,除非為 true。
ASPIRE_CONTAINER_RUNTIME docker 可讓使用者針對容器所支援的資源使用替代容器運行時間。 可能的值為 docker (預設值) 或 podman。 如需詳細資訊,請參閱 安裝和工具概觀。
ASPIRE_VERSION_CHECK_DISABLED false 當設定為 true時, Aspire 不會在啟動時檢查較新的版本。

Aspire 版本更新通知

當應用程式啟動時Aspire,它會檢查 NuGet 上是否有較新版本的 。Aspire 如果找到新版本,儀表板中會出現通知,其中包含最新版本號、 升級指示的連結,以及未來忽略該版本的按鈕。

儀表板的螢幕擷取畫面,顯示具有升級選項的版本更新通知。

只有在下列情況下,版本檢查才會執行:

  • 儀表板已啟用(互動服務可用)。
  • 距離上次檢查至少已過去 2 天。
  • 尚未透過組態設定停用 ASPIRE_VERSION_CHECK_DISABLED 檢查。
  • 應用程式未在發佈模式中執行。

更新是手動的。 您必須編輯專案檔,才能升級 Aspire SDK 和套件版本。

資源服務

資源服務由 AppHost 代管。 儀表板會使用資源服務來擷取 所編 Aspire排之資源的相關資訊。

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

Dashboard

默認情況下,儀表板由 AppHost 自動啟動。 儀表板支援 自己的一組配置,並且可以從 AppHost 配置某些設定。

Option 預設值 Description
ASPNETCORE_URLS null 儀表板位址。 除非 httpsASPIRE_ALLOW_UNSECURED_TRANSPORT 為 true,否則必須 DistributedApplicationOptions.AllowUnsecuredTransport。 使用 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 env var。 OTEL_EXPORTER_OTLP_PROTOCOL env var 是 grpc。 使用 launchSettings.json 自動產生,在 localhost上具有隨機埠。
ASPIRE_DASHBOARD_OTLP_HTTP_ENDPOINT_URL null 設定儀錶板 OTLP HTTP 位址。 儀錶板用來透過OTLP接收遙測。 如果只設定 ASPIRE_DASHBOARD_OTLP_HTTP_ENDPOINT_URL,則會在資源上設定為 OTEL_EXPORTER_OTLP_ENDPOINT env var。 OTEL_EXPORTER_OTLP_PROTOCOL env var 是 http/protobuf
ASPIRE_DASHBOARD_CORS_ALLOWED_ORIGINS null 覆寫儀表板中設定的CORS允許來源。 此設定會取代根據資源端點計算允許來源的預設行為。
ASPIRE_DASHBOARD_FRONTEND_BROWSERTOKEN 自動產生 128 位的 entropy Token。 設定前端瀏覽器令牌。 這是在驗證模式為 BrowserToken 時必須輸入才能存取儀錶板的值。 如果未指定瀏覽器權杖,則每次啟動 AppHost 時都會產生新的權杖。
ASPIRE_DASHBOARD_TELEMETRY_OPTOUT false 將儀錶板設定為永不傳送 使用量遙測
ASPIRE_DASHBOARD_AI_DISABLED false 當支援的 IDE 啟動 AppHost 時,儀表板中的 Copilot 可供使用。GitHub 當在儀錶板中停用設定為 true Copilot 時,不會顯示任何 Copilot UI。
ASPIRE_DASHBOARD_FORWARDEDHEADERS_ENABLED false 啟用轉送標頭中介軟體,以來自 和 X-Forwarded-ProtoX-Forwarded-Host頭的值取代要求內容上的配置和主機值。

Internal

內部設定由 AppHost 和整合使用。 內部設定並非設計為直接設定。

Option 預設值 Description
AppHost:Directory 如果沒有專案,則為內容根目錄。 AppHost 所在專案的目錄。 可從 IDistributedApplicationBuilder.AppHostDirectory存取。
AppHost:Path 與應用程式名稱結合的目錄。 AppHost 的路徑。 它會結合目錄與應用程式名稱。
AppHost:Sha256 當 AppHost 處於發佈模式時,它會從 AppHost 名稱建立。 否則,它是從AppHost路徑建立的。 目前應用程式的十六進位編碼哈希。 雜湊值是根據應用程式在目前電腦上的位置,因此在啟動 AppHost 之間保持穩定。
AppHost:OtlpApiKey 自動產生 128 位的 entropy Token。 用來驗證傳送至儀錶板 OTLP 服務之要求的 API 金鑰。 如有需要,會提供此值:AppHost 處於執行模式、儀表板未停用,且儀表板未設定為允許使用 ASPIRE_DASHBOARD_UNSECURED_ALLOW_ANONYMOUS的匿名存取。
AppHost:BrowserToken 自動產生 128 位的 entropy Token。 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 位的 entropy Token。 用來驗證對 AppHost 資源服務提出要求的 API 金鑰。 API 金鑰可以透過 ASPIRE_DASHBOARD_RESOURCESERVICE_APIKEY來設定。 如有需要,會提供此值:AppHost 處於執行模式、儀表板未停用,且儀表板未設定為允許使用 ASPIRE_DASHBOARD_UNSECURED_ALLOW_ANONYMOUS的匿名存取。