Sdílet prostřednictvím


AzureFunctionAppContainer@1 – Azure Functions pro úlohu kontejneru v1

Aktualizace aplikace funkcí pomocí kontejneru Dockeru

Syntaxe

# 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.

Vstupy

azureSubscription - předplatného Azure
string. Povinné.

Vybere předplatného Azure Resource Manageru pro nasazení.


názvu aplikace
string. Povinné.

Název aplikace funkcí pro kontejnery.


deployToSlotOrASE - Nasazení do slotu nebo služby App Service Environment
boolean. Výchozí hodnota: false.

Nastavte tento vstup na true pro nasazení do existujícího slotu nasazení nebo azure App Service Environment. Ú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ů.


skupiny prostředků
string. Požadováno při deployToSlotOrASE = true.

Název skupiny prostředků, která obsahuje aplikaci funkcí pro kontejnery.


slotu
string. Požadováno při deployToSlotOrASE = true. Výchozí hodnota: production.

Zadá nebo vybere existující slot s výjimkou produkčního slotu.


imageName - název image
string. Povinné.

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 obrázku bude formát: <registry or namespace> <repository> <tag>. Například myregistry.azurecr.io/nginx:latest.


spouštěcího příkazu
string.

Spouštěcí příkaz, který se spustí po nasazení. Příklad dotnet rundotnet filename.dll.


nastavení aplikace
string.

Zadejte nastavení aplikace pomocí -key value syntaxe (například: -Port 5000-RequestTimeout 5000-WEBSITE_TIME_ZONE). Uzavřete hodnoty, které obsahují mezery v dvojitých uvozovkách (například: "Eastern Standard Time").


nastavení konfigurace configurationStrings -
string.

Zadejte konfigurační řetězce pomocí -key value syntaxe (například: -phpVersion 5.6-linuxFxVersion: node|6.11). Uzavřete hodnoty, které obsahují mezery v dvojitých uvozovkách.


Možnosti ovládání úloh

Všechny úlohy mají kromě vstupů také možnosti ovládání. Další informace naleznete v tématu Možnosti ovládacího prvku a běžné vlastnosti úloh.

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é služby App Service.

Poznámky

Pomocí této úlohy nasaďte funkci Azure Functions v Linuxu pomocí vlastní image.

Chyba: Nepodařilo se načíst přístupový token pro Azure. Ověřte, jestli použitý instanční objekt je platný a nevypršela jeho platnost.

Úloha používá instanční objekt v připojení ke službě k ověření v Azure. Pokud vypršela platnost instančního objektu nebo nemá oprávnění ke službě App Service, úloha selže s touto chybou. Ověřte platnost použitého instančního objektu a ověřte, že se nachází 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žívání ověřování instančního objektu.

Chyba SSL

Pokud chcete použít certifikát ve službě App Service, musí být certifikát podepsaný důvěryhodnou certifikační autoritou. Pokud vaše webová aplikace poskytuje 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 buildu nebo verze.

Verze po dlouhou dobu přestane reagovat a pak selže.

Tento problém může být důsledkem nedostatečné kapacity v plánu služby App Service. Pokud chcete tento problém vyřešit, můžete vertikálně navýšit kapacitu instance služby App Service, abyste zvýšili dostupné využití procesoru, paměti RAM a místa na disku nebo zkuste použít jiný plán služby App Service.

5xx kódů chyb

Pokud se zobrazí chyba 5xx, zkontrolujte stav vašehoslužby Azure.

Funkce Azure Najednou přestala fungovat

Azure Functions může náhle přestat fungovat, pokud uplynulo více než jeden rok od posledního nasazení. Pokud nasadíte s parametrem RunFromPackage v části 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 spuštění funkce, takže pokud vypršela platnost SAS, funkce se nespustí. Pokud chcete tento problém vyřešit, nasaďte ho znovu a vygenerujte SAS s datem vypršení platnosti jednoho roku.

Jak mám nakonfigurovat připojení ke službě?

Tato úloha vyžaduje připojení služby Azure Resource Manager.

Jak mám nakonfigurovat nasazení webové úlohy pomocí Application Insights?

Pokud máte nakonfigurované Application Insights a povolili jste Remove additional files at destination, musíte také povolit Exclude files from the App_Data folderpři nasazování do služby App Service. 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 za proxy serverem během nasazování do služby App Service?

Pokud váš agent v místním prostředí vyžaduje webový proxy server, můžete agenta informovat o proxy serveru během konfigurace. To umožňuje vašemu agentu připojit se k Azure Pipelines nebo Azure DevOps Serveru přes proxy server. Další informace o spuštění agenta v místním prostředí za webovým proxy serverem.

Příklady

Tento příklad nasadí Službu 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, klasické sestavení, klasická verze
Běží na Agent, DeploymentGroup
požadavky Žádný
možnosti Tento úkol nesplňuje žádné požadavky na následné úkoly v úloze.
omezení příkazů Jakýkoliv
nastavitelné proměnné Jakýkoliv
Verze agenta 2.104.1 nebo vyšší
Kategorie úkolu Nasadit