Konfigurowanie ustawień aplikacji

Ukończone

W usłudze App Service ustawienia aplikacji to zmienne przekazywane jako zmienne środowiskowe do kodu aplikacji. W przypadku aplikacji systemu Linux i kontenerów niestandardowych usługa App Service przekazuje ustawienia aplikacji do kontenera przy użyciu --env flagi w celu ustawienia zmiennej środowiskowej w kontenerze.

Dostęp do ustawień aplikacji można uzyskać, przechodząc do strony zarządzania aplikacją i wybierając pozycję Zmienne środowiskowe > Ustawienia aplikacji.

Przechodzenie do pozycji Zmienne środowiskowe > Ustawienia aplikacji

W przypadku deweloperów ASP.NET i ASP.NET Core ustawienie ustawień aplikacji w usłudze App Service przypomina ustawienie ich w <appSettings> pliku Web.config lub appsettings.json, ale wartości w usłudze App Service zastępują te w pliku Web.config lub appsettings.json. Ustawienia programowania (na przykład lokalne hasło mySQL) można przechowywać w plikach Web.config lub appsettings.json i wpisach tajnych produkcyjnych (na przykład hasła bazy danych Azure MySQL) w usłudze App Service. Ten sam kod używa ustawień programowania podczas lokalnego debugowania i używa wpisów tajnych produkcyjnych podczas wdrażania na platformie Azure.

Ustawienia aplikacji są zawsze szyfrowane podczas przechowywania (szyfrowane w spoczynku).

Dodawanie i edytowanie ustawień

Aby dodać nowe ustawienie aplikacji, wybierz pozycję + Dodaj. Jeśli używasz miejsc wdrożenia, możesz określić, czy ustawienie jest zamienialne, czy nie. W oknie dialogowym możesz trzymać ustawienie na bieżące miejsce.

Wybranie ustawienia miejsca wdrożenia powoduje przyklejenie ustawienia do bieżącego miejsca.

Po zakończeniu wybierz pozycję Zastosuj. Nie zapomnij wybrać pozycji Zastosuj z powrotem na stronie Zmienne środowiskowe.

Uwaga

W domyślnej usłudze aplikacji systemu Linux lub niestandardowym kontenerze systemu Linux każda zagnieżdżona struktura klucza JSON w nazwie ustawienia aplikacji, na przykład ApplicationInsights:InstrumentationKey musi być skonfigurowana w usłudze App Service jako ApplicationInsights__InstrumentationKey nazwę klucza. Innymi słowy, każdy : element powinien zostać zastąpiony znakiem __ (podwójne podkreślenie). Wszystkie kropki w nazwie ustawienia aplikacji zostaną zastąpione znakiem _ (pojedyncze podkreślenie).

Zbiorcze edytowanie ustawień aplikacji

Aby zbiorczo dodać lub edytować ustawienia aplikacji, wybierz przycisk Edytuj zaawansowane. Po zakończeniu wybierz przycisk OK. Nie zapomnij wybrać pozycji Zastosuj z powrotem na stronie Zmienne środowiskowe. Ustawienia aplikacji mają następujące formatowanie JSON:

[
  {
    "name": "<key-1>",
    "value": "<value-1>",
    "slotSetting": false
  },
  {
    "name": "<key-2>",
    "value": "<value-2>",
    "slotSetting": false
  },
  ...
]

Konfigurowanie parametrów połączenia

W przypadku deweloperów ASP.NET i ASP.NET Core ustawienie parametry połączenia w usłudze App Service przypomina ustawienie ich w <connectionStrings> pliku Web.config, ale wartości ustawione w usłudze App Service zastępują te w pliku Web.config. W przypadku innych stosów języków lepiej użyć ustawień aplikacji, ponieważ parametry połączenia wymagają specjalnego formatowania w kluczach zmiennych w celu uzyskania dostępu do wartości.

Napiwek

Istnieje jeden przypadek, w którym można użyć parametry połączenia zamiast ustawień aplikacji dla języków non-.NET: niektóre typy baz danych platformy Azure są tworzone wraz z aplikacją tylko wtedy, gdy skonfigurujesz parametry połączenia dla bazy danych w aplikacji usługi App Service.

Dodawanie i edytowanie parametry połączenia jest zgodne z tymi samymi zasadami co inne ustawienia aplikacji i mogą być również powiązane z miejscami wdrożenia. Przykład parametry połączenia w formatowaniu JSON używanym do zbiorczego dodawania lub edytowania:

[
  {
    "name": "name-1",
    "value": "conn-string-1",
    "type": "SQLServer",
    "slotSetting": false
  },
  {
    "name": "name-2",
    "value": "conn-string-2",
    "type": "PostgreSQL",
    "slotSetting": false
  },
  ...
]

Uwaga

Aplikacje platformy .NET przeznaczone dla bazy danych PostgreSQL powinny ustawić parametry połączenia na Wartość Niestandardowa jako obejście znanego problemu w elemencie .NET EnvironmentVariablesConfigurationProvider.

Konfigurowanie zmiennych środowiskowych dla kontenerów niestandardowych

Kontener niestandardowy może używać zmiennych środowiskowych, które muszą być dostarczane zewnętrznie. Możesz przekazać je za pośrednictwem usługi Cloud Shell. W powłoce Bash:

az webapp config appsettings set --resource-group <group-name> --name <app-name> --settings key1=value1 key2=value2

W programie PowerShell:

Set-AzWebApp -ResourceGroupName <group-name> -Name <app-name> -AppSettings @{"DB_HOST"="myownserver.mysql.database.azure.com"}

Po uruchomieniu aplikacji ustawienia aplikacji usługi App Service są automatycznie wstrzykiwane do procesu jako zmienne środowiskowe. Zmienne środowiskowe kontenera można zweryfikować przy użyciu adresu URL https://<app-name>.scm.azurewebsites.net/Env.