Sdílet prostřednictvím


Přehled verzí modulu runtime Azure Functions

Aplikace funkcí běží na konkrétní verzi modulu runtime Azure Functions. Ve výchozím nastavení se aplikace funkcí vytvářejí v nejnovější verzi modulu runtime Functions 4.x. Vaše aplikace funkcí se podporují jenom v případech, kdy běží na podporované hlavní verzi. Tento článek vysvětluje, jak nakonfigurovat aplikaci funkcí v Azure tak, aby cílila nebo připnula konkrétní verzi v případě potřeby.

Způsob, jakým cílíte na konkrétní verzi, závisí na tom, jestli používáte Windows nebo Linux. Tato verze článku podporuje Windows. V horní části článku vyberte svůj operační systém.

Způsob, jakým cílíte na konkrétní verzi, závisí na tom, jestli používáte Windows nebo Linux. Tato verze článku podporuje Linux. V horní části článku vyberte svůj operační systém.

Důležité

Pokud je to možné, vždy spouštět funkce na nejnovější podporované verzi modulu runtime Azure Functions. Aplikaci byste měli připnout jenom na konkrétní verzi, pokud k tomu máte pokyn kvůli problému s nejnovější verzí. Vždy přejděte až k nejnovější verzi modulu runtime, jakmile vaše funkce můžou běžet správně.

Během místního vývoje musí nainstalovaná verze nástrojů Azure Functions Core Tools odpovídat hlavní verzi modulu runtime používané aplikací funkcí v Azure. Další informace najdete v tématu Verze nástrojů Core Tools.

Aktualizace verze modulu runtime

Pokud je to možné, měli byste vždy spouštět aplikace funkcí na nejnovější podporované verzi modulu runtime Azure Functions. Pokud je vaše aplikace funkcí aktuálně spuštěná ve starší verzi modulu runtime, měli byste aplikaci migrovat na verzi 4.x.

Pokud má vaše aplikace existující funkce, musíte před přechodem na novější hlavní verzi modulu runtime provést preventivní opatření. Následující články popisují zásadní změny mezi hlavními verzemi, včetně zásadních změn specifických pro jednotlivé jazyky. Poskytují také podrobné pokyny pro úspěšnou migraci vaší stávající aplikace funkcí.

Pokud chcete zjistit aktuální verzi modulu runtime, přečtěte si téma Zobrazení aktuální verze modulu runtime.

Zobrazení aktuální verze modulu runtime

Aktuální verzi modulu runtime aplikace funkcí můžete zobrazit jedním z těchto způsobů:

Pokud chcete zobrazit a aktualizovat verzi modulu runtime, kterou aktuálně používá aplikace funkcí, postupujte takto:

  1. Na webu Azure Portal přejděte do aplikace funkcí.

  2. Rozbalte nastavení a pak vyberte Konfigurace.

  3. Na kartě Nastavení modulu runtime funkce si poznamenejte verzi modulu runtime. V tomto příkladu je verze nastavena na ~4.

    Snímek obrazovky znázorňující, jak zobrazit verzi modulu runtime

Připnutí na konkrétní verzi

Azure Functions umožňuje použít FUNCTIONS_EXTENSION_VERSION nastavení aplikace k cílení na verzi modulu runtime používanou danou aplikací funkcí. Pokud zadáte jenom hlavní verzi (~4), aplikace funkcí se automaticky aktualizuje na nové podverze modulu runtime, jakmile budou dostupné. Aktualizace podverze se provádějí automaticky, protože nové podverze pravděpodobně nezavádějí změny, které by přerušily vaše funkce.

Aplikace pro Linux používají linuxFxVersion nastavení webu spolu s FUNCTIONS_EXTENSION_VERSION určením správné základní image Linuxu, ve které se mají spouštět funkce. Při vytváření nové aplikace funkcí v Linuxu modul runtime automaticky zvolí správnou základní image na základě verze modulu runtime vašeho zásobníku jazyků.

Připnutí na konkrétní verzi modulu runtime způsobí restartování aplikace funkcí.

Když zadáte konkrétní podverzi (například 4.0.12345) v FUNCTIONS_EXTENSION_VERSION, aplikace funkcí se připne k této konkrétní verzi modulu runtime, dokud se explicitně nerozhodnete přejít zpět na automatické aktualizace verzí. Měli byste připnout jenom na konkrétní podverzi dostatečně dlouho, abyste vyřešili všechny problémy s vaší aplikací funkcí, které vám brání v cílení na hlavní verzi. Starší podverze se pravidelně odebírají z produkčního prostředí. Pokud je vaše aplikace funkcí připnutá k podverzi, která se později odebere, aplikace funkcí se místo verze nastavené v FUNCTIONS_EXTENSION_VERSIONaplikaci funkcí spustí na nejbližší existující verzi. Odebrání podverze se oznamuje v oznámeních služby App Service.

Poznámka:

Když se pokusíte publikovat ze sady Visual Studio do aplikace, která je připnutá ke konkrétní podverzi modulu runtime, zobrazí se dialogové okno s výzvou k aktualizaci na nejnovější verzi nebo zrušení publikování. Pokud se chcete této kontrole vyhnout, musíte použít konkrétní podverzi, přidejte do <DisableFunctionExtensionVersionUpdate>true</DisableFunctionExtensionVersionUpdate> souboru vlastnost .csproj .

K dočasnému připnutí aplikace na konkrétní verzi modulu runtime použijte jednu z těchto metod:

Pokud chcete zobrazit a aktualizovat verzi modulu runtime, kterou aktuálně používá aplikace funkcí, postupujte takto:

  1. Na webu Azure Portal přejděte do aplikace funkcí.

  2. Rozbalte nastavení a pak vyberte Konfigurace.

  3. Na kartě Nastavení modulu runtime funkce si poznamenejte verzi modulu runtime. V tomto příkladu je verze nastavena na ~4.

    Snímek obrazovky znázorňující, jak zobrazit verzi modulu runtime

  1. Pokud chcete aplikaci připnout na konkrétní podverzi, rozbalte v levém podokně nastavení a pak vyberte Proměnné prostředí.

  2. Na kartě Nastavení aplikace vyberte FUNCTIONS_EXTENSION_VERSION, změňte hodnotu na požadovanou podverzi a pak vyberte Použít.

  3. Vyberte Použít a pak vyberte Potvrdit , aby se změny použily, a restartujte aplikaci.

Aplikace funkcí se restartuje po provedení změny nastavení aplikace.

Pokud chcete připnout aplikaci funkcí na konkrétní verzi modulu runtime v Linuxu, nastavíte adresu URL základní image specifickou pro verzi v linuxFxVersion nastavení webu ve formátu DOCKER|<PINNED_VERSION_IMAGE_URI>.

Důležité

Připnuté aplikace funkcí v Linuxu nedostávají pravidelné aktualizace zabezpečení a hostování funkcí. Pokud ji nedoporučuje pracovník podpory, použijte FUNCTIONS_EXTENSION_VERSION nastavení a standardní linuxFxVersion hodnotu pro váš jazyk a verzi, například Python|3.9. Platné hodnoty najdete v referenčním linuxFxVersion článku.

Připnutí na konkrétní modul runtime se v současné době nepodporuje pro aplikace funkcí linuxu spuštěné v plánu Consumption.

Následující příklad ukazuje linuxFxVersion hodnotu potřebnou k připnutí aplikace funkcí Node.js 16 na konkrétní verzi modulu runtime 4.14.0.3:

DOCKER|mcr.microsoft.com/azure-functions/node:4.14.0.3-node16

V případě potřeby vám může pracovník podpory poskytnout platný identifikátor URI základní image pro vaši aplikaci.

K zobrazení a nastavení linuxFxVersionpříkazu Azure CLI použijte následující příkazy Azure CLI. Aktuálně nemůžete nastavit linuxFxVersion na portálu nebo pomocí Azure PowerShellu:

  • Pokud chcete zobrazit aktuální verzi modulu runtime, použijte příkaz az functionapp config show :

    az functionapp config show --name <function_app> \
    --resource-group <my_resource_group> --query 'linuxFxVersion' -o tsv
    

    V tomto kódu nahraďte <function_app> názvem vaší aplikace funkcí. Nahraďte <my_resource_group> také název skupiny prostředků pro vaši aplikaci funkcí. Vrátí se aktuální hodnota linuxFxVersion .

  • Pokud chcete aktualizovat linuxFxVersion nastavení v aplikaci funkcí, použijte příkaz az functionapp config set :

    az functionapp config set --name <FUNCTION_APP> \
    --resource-group <RESOURCE_GROUP> \
    --linux-fx-version <LINUX_FX_VERSION>
    

    Nahraďte <FUNCTION_APP> názvem vaší aplikace funkcí. Nahraďte <RESOURCE_GROUP> také název skupiny prostředků pro vaši aplikaci funkcí. Nakonec nahraďte <LINUX_FX_VERSION> hodnotou konkrétního obrázku poskytnutého pracovníkem podpory.

Tyto příkazy můžete spustit z Azure Cloud Shellu tak, že v předchozích příkladech kódu zvolíte Open Cloud Shell. Tento příkaz můžete spustit také místně pomocí Azure CLI po spuštění az login a přihlásit se.

Aplikace funkcí se restartuje po provedení změny konfigurace webu.

Další kroky