Konfigurowanie ustawień aplikacji
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.
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.
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
.