應用程式主機設定
應用程式主機項目會設定並啟動分散式應用程式 (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_URL
和DOTNET_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 |
儀錶板位址。 除非 https 或 ASPIRE_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 匿名存取。 |