AzureFunctionAppContainer@1 – Azure Functions pro úlohu kontejneru v1
Aktualizujte aplikaci funkcí pomocí kontejneru Dockeru.
Aktualizujte aplikace Function Apps pomocí kontejnerů Dockeru.
Syntax
# Azure Functions for container v1
# Update a function app with a Docker container.
- task: AzureFunctionAppContainer@1
inputs:
azureSubscription: # string. Required. Azure subscription.
appName: # string. Required. App name.
#deployToSlotOrASE: false # boolean. Deploy to Slot or App Service Environment. Default: false.
#resourceGroupName: # string. Required when deployToSlotOrASE = true. Resource group.
#slotName: 'production' # string. Required when deployToSlotOrASE = true. Slot. Default: production.
imageName: # string. Required. Image name.
#containerCommand: # string. Startup command.
# Application and Configuration Settings
#appSettings: # string. App settings.
#configurationStrings: # string. Configuration settings.
# Azure Function for container v1
# Update Function Apps with Docker containers.
- task: AzureFunctionAppContainer@1
inputs:
azureSubscription: # string. Required. Azure subscription.
appName: # string. Required. App name.
#deployToSlotOrASE: false # boolean. Deploy to Slot or App Service Environment. Default: false.
#resourceGroupName: # string. Required when deployToSlotOrASE = true. Resource group.
#slotName: 'production' # string. Required when deployToSlotOrASE = true. Slot. Default: production.
imageName: # string. Required. Image name.
#containerCommand: # string. Startup command.
# Application and Configuration Settings
#appSettings: # string. App settings.
#configurationStrings: # string. Configuration settings.
Vstupy
azureSubscription
- Předplatné Azure
string
. Povinná hodnota.
Vybere předplatné Azure Resource Manager pro nasazení.
appName
- Název aplikace
string
. Povinná hodnota.
Název aplikace funkcí pro kontejnery.
deployToSlotOrASE
- Nasazení do slotu nebo App Service Environment
boolean
. Výchozí hodnota: false
.
Tento vstup nastavte na pro true
nasazení do existujícího slotu nasazení nebo Azure App Service prostředí. Úkol potřebuje název skupiny prostředků pro oba cíle. Pro možnost slotu nasazení se výchozí nasazení nasadí do produkčního slotu nebo můžete zadat jakýkoli jiný název existujícího slotu. Pokud je cílem nasazení Azure App Service Environment, ponechte název slotu jako produkční a zadejte název skupiny prostředků.
resourceGroupName
- Skupina prostředků
string
. Vyžaduje se, když deployToSlotOrASE = true
.
Název skupiny prostředků, která obsahuje aplikaci funkcí pro kontejnery.
slotName
- Slot
string
. Vyžaduje se, když deployToSlotOrASE = true
. Výchozí hodnota: production
.
Zadá nebo vybere existující slot s výjimkou produkčního slotu.
imageName
- Název obrázku
string
. Povinná hodnota.
Globálně jedinečný název domény nejvyšší úrovně pro váš konkrétní registr nebo obor názvů.
Poznámka: Plně kvalifikovaný název image bude mít formát : <registry or namespace> <repository> <tag>
. Například, myregistry.azurecr.io/nginx:latest
.
containerCommand
- Spouštěcí příkaz
string
.
Spouštěcí příkaz, který se spustí po nasazení. Příklad: dotnet run
dotnet filename.dll.
appSettings
- Nastavení aplikace
string
.
Zadejte nastavení aplikace pomocí syntaxe -key value
(například :-RequestTimeout 5000
-Port 5000
-WEBSITE_TIME_ZONE
). Uzavřete hodnoty, které obsahují mezery v dvojitých uvozovkách (například: "Eastern Standard Time"
).
configurationStrings
- Nastavení konfigurace
string
.
Zadejte konfigurační řetězce pomocí syntaxe -key value
(například: -phpVersion 5.6
-linuxFxVersion: node|6.11
). Uzavře hodnoty, které obsahují mezery v dvojitých uvozovkách.
Možnosti řízení úkolů
Všechny úkoly mají kromě vstupů úkolů také možnosti řízení. Další informace najdete v tématu Možnosti ovládacího prvku a běžné vlastnosti úlohy.
Výstupní proměnné
Tato úloha definuje následující výstupní proměnné, které můžete využívat v podřízených krocích, úlohách a fázích.
AppServiceApplicationUrl
Adresa URL aplikace vybraného App Service.
Poznámky
Tuto úlohu použijte k nasazení funkce Azure Functions v Linuxu pomocí vlastní image.
Chyba: Nepodařilo se načíst přístupový token pro Azure. Ověřte, jestli je použitý instanční objekt platný a nevypršela jeho platnost.
Úloha používá instanční objekt v připojení služby k ověření v Azure. Pokud platnost instančního objektu vypršela nebo nemá oprávnění k App Service, úloha selže s touto chybou. Ověřte platnost použitého instančního objektu a to, že je k dispozici v registraci aplikace. Další informace najdete v tématu Použití řízení přístupu na základě role ke správě přístupu k prostředkům předplatného Azure. Tento blogový příspěvek obsahuje také další informace o použití ověřování instančního objektu.
Chyba SSL
Pokud chcete použít certifikát v App Service, musí být certifikát podepsaný důvěryhodnou certifikační autoritou. Pokud webová aplikace zobrazí chyby ověření certifikátu, pravděpodobně používáte certifikát podepsaný svým držitelem. Pokud chcete chybu vyřešit, nastavte proměnnou s názvem VSTS_ARM_REST_IGNORE_SSL_ERRORS
na hodnotu true
v kanálu sestavení nebo verze.
Vydání se na dlouhou dobu zasekne a pak selže
Příčinou tohoto problému může být nedostatečná kapacita ve vašem plánu App Service. Pokud chcete tento problém vyřešit, můžete vertikálně navýšit kapacitu instance App Service a zvýšit tak dostupné využití procesoru, paměti RAM a místa na disku nebo můžete zkusit použít jiný plán App Service.
Chybové kódy 5xx
Pokud se zobrazí chyba 5xx , zkontrolujte stav služby Azure.
Funkce Azure Functions náhle přestala fungovat
Azure Functions může náhle přestat fungovat, pokud od posledního nasazení uplynul více než jeden rok. Pokud nasadíte pomocí runFromPackage v "deploymentMethod", vygeneruje se SAS s datem vypršení platnosti 1 rok a nastaví se jako hodnota "WEBSITE_RUN_FROM_PACKAGE" v konfiguraci aplikace. Azure Functions používá tento sas k odkazování na soubor balíčku pro provádění funkce, takže pokud platnost SAS vypršela, funkce se nespustí. Pokud chcete tento problém vyřešit, nasaďte ho znovu a vygenerujte sas s datem vypršení platnosti jeden rok.
Jak mám nakonfigurovat připojení služby?
Tato úloha vyžaduje připojení služby Azure Resource Manager.
Jak mám nakonfigurovat nasazení webových úloh pomocí Application Insights?
Pokud máte nakonfigurovanou službu Application Insights a máte povolenou Remove additional files at destination
službu , musíte při nasazování do App Service také povolit Exclude files from the App_Data folder
. Povolením této možnosti zůstane rozšíření Application Insights v bezpečném stavu. Tento krok je povinný, protože nepřetržitá webová úloha Application Insights je nainstalovaná do složky App_Data.
Jak mám nakonfigurovat agenta, pokud je během nasazování do App Service za proxy serverem?
Pokud agent v místním prostředí vyžaduje webový proxy server, můžete agenta informovat o proxy serveru během konfigurace. Agent se tak může připojit ke službě Azure Pipelines nebo Azure DevOps Server prostřednictvím proxy serveru. Přečtěte si další informace o spuštění agenta v místním prostředí za webovým proxy serverem.
Příklady
Tento příklad nasadí Azure Functions v Linuxu pomocí kontejnerů:
variables:
imageName: contoso.azurecr.io/azurefunctions-containers:$(build.buildId)
azureSubscription: Contoso
# To ignore SSL error uncomment the following variable
# VSTS_ARM_REST_IGNORE_SSL_ERRORS: true
steps:
- task: AzureFunctionAppContainer@1
displayName: Azure Function App on Container deploy
inputs:
azureSubscription: $(azureSubscription)
appName: functionappcontainers
imageName: $(imageName)
Požadavky
Požadavek | Popis |
---|---|
Typy kanálů | YAML, classic build, verze Classic |
Spustí se | Agent, DeploymentGroup |
Požadavky | Žádné |
Možnosti | Tento úkol nesplňuje žádné požadavky na následné úkoly v úloze. |
Omezení příkazů | Všechny |
Nastavitelné proměnné | Všechny |
Verze agenta | 2.104.1 nebo vyšší |
Kategorie úloh | Nasazení |