Sdílet prostřednictvím


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 rundotnet 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 destinationsluž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í