Správa aplikace funkcí
V Azure Functions poskytuje aplikace funkcí kontext spuštění jednotlivých funkcí. Chování aplikace funkcí se vztahuje na všechny funkce hostované danou aplikací funkcí. Všechny funkce v aplikaci funkcí musí být ve stejném jazyce.
Jednotlivé funkce v aplikaci funkcí se nasazují společně a škálují se společně. Všechny funkce ve stejné aplikaci funkcí sdílejí prostředky na instanci, jak se aplikace funkcí škáluje.
Připojovací řetězce, proměnné prostředí a další nastavení aplikace se definují samostatně pro každou aplikaci funkcí. Všechna data, která musí být sdílená mezi aplikacemi funkcí, by se měla ukládat externě v trvalém úložišti.
Začínáme na webu Azure Portal
Poznámka:
Vzhledem k omezením úprav kódu funkce na webu Azure Portal byste měli vyvíjet funkce místně a publikovat projekt kódu do aplikace funkcí v Azure. Další informace najdete v tématu Omezení vývoje na webu Azure Portal.
Pokud chcete zobrazit nastavení aplikace v aplikaci funkcí, postupujte takto:
Přihlaste se pomocí svého účtu Azure k webu Azure Portal. Vyhledejte aplikaci funkcí a vyberte ji.
V levém podokně aplikace funkcí rozbalte Nastavení, vyberte Proměnné prostředí a pak vyberte kartu Nastavení aplikace.
Práce s nastavením aplikace
Kromě předdefinovaných nastavení aplikací používaných službou Azure Functions můžete vytvořit libovolný počet nastavení aplikace podle potřeby kódu funkce. Další informace najdete v referenčních informacích k nastavení aplikace pro Azure Functions.
Tato nastavení jsou uložena zašifrovaná. Další informace najdete v tématu Zabezpečení nastavení aplikace.
Nastavení aplikace můžete spravovat z webu Azure Portal a pomocí Azure CLI a Azure PowerShellu. Nastavení aplikace můžete spravovat také ze sady Visual Studio Code a ze sady Visual Studio.
Pokud chcete zobrazit nastavení aplikace, přečtěte si téma Začínáme na webu Azure Portal.
Karta Nastavení aplikace udržuje nastavení, která používá vaše aplikace funkcí:
Použití nastavení aplikace
Hodnoty nastavení aplikace funkcí je možné v kódu číst také jako proměnné prostředí. Další informace najdete v části Proměnné prostředí v těchto referenčních článcích specifických pro jazyk:
Při místním vývoji aplikace funkcí je nutné udržovat místní kopie těchto hodnot v souboru projektu local.settings.json . Další informace naleznete v tématu Místní soubor nastavení.
Nastavení nasazení FTPS
Azure Functions podporuje nasazení kódu projektu do aplikace funkcí pomocí FTPS. Vzhledem k tomu, že tato metoda nasazení vyžaduje synchronizaci triggerů, nedoporučuje se. K bezpečnému přenosu souborů projektu vždy používejte FTPS, nikoli FTP.
K získání přihlašovacích údajů požadovaných pro nasazení FTPS použijte jednu z těchto metod:
Přihlašovací údaje pro publikování FTPS můžete získat na webu Azure Portal stažením profilu publikování pro vaši aplikaci funkcí.
Důležité
Profil publikování obsahuje důležité přihlašovací údaje zabezpečení. Stažený soubor vždy zabezpečte na místním počítači.
Stažení profilu publikování aplikace funkcí:
Na webu Azure Portal vyhledejte stránku vaší aplikace funkcí a v levém sloupci rozbalte položku Konfigurace nastavení>.
Na stránce Konfigurace vyberte kartu Obecné nastavení a ujistěte se, že je zapnuté přihlašovací údaje pro základní ověřování ověřování SCM. Pokud je toto nastavení vypnuté, nemůžete použít profily publikování, takže vyberte Zapnuto a pak Uložit.
Vraťte se na stránku Přehled aplikace funkcí a pak vyberte Získat profil publikování.
Uložte a zkopírujte obsah souboru.
- V souboru vyhledejte
publishProfile
prvek s atributempublishMethod="FTP"
. V tomto elementupublishUrl
userName
, auserPWD
atributy obsahují cílovou adresu URL a přihlašovací údaje pro publikování FTPS.
Typ plánu hostování
Když vytvoříte aplikaci funkcí, vytvoříte také plán hostování, ve kterém se aplikace spouští. Plán může mít jednu nebo více aplikací funkcí. Funkce, škálování a ceny vašich funkcí závisí na typu plánu. Další informace najdete v tématu Možnosti hostování služby Azure Functions.
Typ plánu, který vaše aplikace funkcí používá, můžete určit na webu Azure Portal nebo pomocí Rozhraní příkazového řádku Azure nebo rozhraní API Azure PowerShellu.
Následující hodnoty označují typ plánu:
Typ plánu | portál Azure | Azure CLI / PowerShell |
---|---|---|
Využití | Využití | Dynamic |
Premium | ElasticPremium | ElasticPremium |
Dedicated (App Service) | Různé | Různé |
Pokud chcete určit typ plánu používaného vaší aplikací funkcí, podívejte se na plán služby App Service na stránce Přehled aplikace funkcí na webu Azure Portal.
Pokud chcete zobrazit cenovou úroveň, vyberte název plánu služby App Service a pak v levém podokně vyberte Vlastnosti nastavení>.
Plánování migrace
Aplikaci funkcí můžete migrovat mezi plánem Consumption a plánem Premium ve Windows. Při migraci mezi plány mějte na paměti následující aspekty:
- Přímá migrace do plánu Dedicated (App Service) se nepodporuje.
- Migrace není v Linuxu podporovaná.
- Zdrojový plán a cílový plán musí být ve stejné skupině prostředků a geografické oblasti. Další informace najdete v tématu Přesunutí aplikace do jiného plánu služby App Service.
- Konkrétní příkazy rozhraní příkazového řádku závisí na směru migrace.
- Při migraci aplikace funkcí mezi plány dochází k výpadkům při provádění funkcí.
- Stav a další obsah specifický pro aplikaci se udržuje, protože stejnou sdílenou složku Azure používá aplikace před migrací i po migraci.
Svůj plán můžete migrovat pomocí těchto nástrojů:
K přechodu na jiný plán můžete použít Azure Portal .
Zvolte směr migrace aplikace ve Windows.
Omezení vývoje na webu Azure Portal
Následující tabulka uvádí operační systémy a jazyky, které podporují úpravy na portálu:
Jazyk | Využití ve Windows | Windows Premium | Windows Dedicated | Využití v Linuxu | Linux Premium | Linux Dedicated |
---|---|---|---|---|---|---|
C# | ||||||
Java | ||||||
JavaScript (Node.js) | ✔ | ✔ | ✔ | ✔ | ✔ | |
Python | ✔ | ✔ | ✔ | |||
PowerShell | ✔ | ✔ | ✔ | |||
TypeScript (Node.js) |
Při vývoji funkcí na webu Azure Portal zvažte tato omezení:
- Úpravy na portálu se podporují jenom u funkcí vytvořených nebo naposledy upravených na webu Azure Portal.
- Úpravy na portálu se podporují jenom pro funkce javascriptu, PowerShellu, Pythonu a skriptu jazyka C#.
- Úpravy na portálu nejsou v současné době podporovány plánem Flex Consumption.
- Když nasadíte kód do aplikace funkcí mimo web Azure Portal, nebudete už moct upravovat žádný kód pro tuto aplikaci funkcí na portálu. V tomto případě pokračujte v používání místního vývoje.
- V případě Pythonu se vývoj s vlastními moduly v současné době na portálu nepodporuje. Pokud chcete do aplikace funkcí přidat vlastní moduly, musíte aplikaci vyvíjet místně.
- Pro zkompilované funkce jazyka C# a funkce v Javě můžete vytvořit aplikaci funkcí a související prostředky na portálu. Projekt kódu funkcí ale musíte vytvořit místně a pak ho publikovat do Azure.
Pokud je to možné, vyvíjejte funkce místně a publikujte projekt kódu do aplikace funkcí v Azure. Další informace najdete v tématu Místní kód a otestování azure Functions.
Ruční instalace rozšíření
Funkce knihovny tříd jazyka C# mohou zahrnovat balíčky NuGet pro rozšíření vazeb přímo v projektu knihovny tříd. V případě jiných jazyků non-.NET a skriptů jazyka C# byste měli použít sady rozšíření. Pokud ručně instalujete rozšíření, můžete to provést pomocí nástrojů Azure Functions Core Tools místně. Pokud nemůžete použít sady rozšíření a můžete pracovat jenom na portálu, musíte k ručnímu vytvoření souboru extensions.csproj přímo na webu použít Rozšířené nástroje (Kudu ). Nejprve odeberte extensionBundle
prvek ze souboru host.json .
Stejný postup funguje pro jakýkoli jiný soubor, který potřebujete přidat do aplikace.
Důležité
Pokud je to možné, neupravujte soubory přímo v aplikaci funkcí v Azure. Soubory aplikací doporučujeme stáhnout místně pomocí nástrojů Core Tools k instalaci rozšíření a dalších balíčků, ověření změn a následné opětovné publikování aplikace pomocí nástrojů Core Tools nebo jedné z dalších podporovaných metod nasazení.
Editor functions integrovaný na webu Azure Portal umožňuje aktualizovat kód funkce a konfigurační soubory přímo na portálu:
Vyberte svou aplikaci funkcí a pak v části Funkce vyberte Funkce.
Zvolte svoji funkci a v části Vývojář vyberte Kód + test.
Zvolte soubor, který chcete upravit, a po dokončení vyberte Uložit .
Soubory v kořenovém adresáři aplikace, jako je function.proj nebo extensions.csproj, je potřeba vytvořit a upravit pomocí rozšířených nástrojů (Kudu):
Vyberte svou aplikaci funkcí, rozbalte vývojové nástroje a pak vyberte Pokročilé nástroje>Go.
Pokud se zobrazí výzva, přihlaste se k webu Správce správy zdrojového kódu (SCM) pomocí svých přihlašovacích údajů Azure.
V nabídce konzoly Ladění zvolte CMD.
Přejděte na
.\site\wwwroot
tlačítko plus (+) v horní části a vyberte Nový soubor.Pojmenujte soubor, například
extensions.csproj
, a stiskněte Enter.Vyberte tlačítko upravit vedle nového souboru, přidejte nebo aktualizujte kód v souboru a pak vyberte Uložit.
V případě souboru projektu, jako jsou extensions.csproj, spusťte následující příkaz a znovu sestavte projekt rozšíření:
dotnet build extensions.csproj
Funkce platformy
Aplikace funkcí běží na platformě Aplikace Azure Service, která je udržuje. Aplikace funkcí tak mají přístup k většině funkcí základní platformy pro hostování webů Azure. Když používáte Azure Portal, v levém podokně se dostanete k mnoha funkcím platformy App Service, které můžete použít ve svých aplikacích funkcí.
Následující matice označuje podporu funkcí webu Azure Portal prostřednictvím plánu hostování a operačního systému:
Funkce | Plán Consumption | Plán Flex Consumption | Plán Premium | Plán Dedicated |
---|---|---|---|---|
Pokročilé nástroje (Kudu) | Windows: ✔ Linux: X |
X | ✔ | ✔ |
Editor služby App Service | Windows: ✔ Linux: X |
X | Windows: ✔ Linux: X |
Windows: ✔ Linux: X |
Zálohování | X | X | X | ✔ |
Konzola | Windows: příkazový řádek Linux: X |
X | Windows: příkazový řádek Linux: SSH |
Windows: příkazový řádek Linux: SSH |
Zbytek tohoto článku se zaměřuje na následující funkce na portálu, které jsou užitečné pro vaše aplikace funkcí:
Další informace o tom, jak pracovat s nastavením služby App Service, najdete v tématu Konfigurace nastavení služby Aplikace Azure Service.
Editor služby App Service
Editor služby App Service je pokročilý editor na portálu, který můžete použít k úpravě konfiguračních souborů JSON a souborů kódu stejně. Při výběru této možnosti se spustí samostatná karta prohlížeče se základním editorem. Tento editor umožňuje integraci s úložištěm Git, spuštěním a laděním kódu a úpravou nastavení aplikace funkcí. Tento editor poskytuje vylepšené vývojové prostředí pro vaše funkce v porovnání s integrovaným editorem funkcí.
Doporučujeme zvážit vývoj funkcí na místním počítači. Při vývoji místně a publikování do Azure jsou soubory projektu jen pro čtení na webu Azure Portal. Další informace najdete v tématu Místní kód a otestování azure Functions.
Konzola
Konzola na portálu je ideální vývojářský nástroj, když dáváte přednost interakci s aplikací funkcí z příkazového řádku. Mezi běžné příkazy patří vytváření adresářů a souborů a navigace a spouštění dávkových souborů a skriptů.
Při místním vývoji doporučujeme používat nástroje Azure Functions Core Tools a Azure CLI.
Rozšířené nástroje (Kudu)
Pokročilé nástroje služby App Service (označované také jako Kudu) poskytují přístup k pokročilým funkcím správy vaší aplikace funkcí. V Kudu spravujete systémové informace, nastavení aplikace, proměnné prostředí, rozšíření webu, hlavičky HTTP a proměnné serveru. Kudu můžete spustit také tak, že přejdete do koncového bodu SCM pro vaši aplikaci funkcí, například: https://<myfunctionapp>.scm.azurewebsites.net/
.
Deployment Center
Když používáte řešení správy zdrojového kódu k vývoji a údržbě kódu funkcí, deployment Center umožňuje sestavovat a nasazovat ze správy zdrojového kódu. Projekt se sestaví a nasadí do Azure při provádění aktualizací. Další informace najdete v tématu Technologie nasazení ve službě Azure Functions.
Sdílení prostředků různého původu
Aby se zabránilo spuštění škodlivého kódu na klientovi, moderní prohlížeče blokují požadavky z webových aplikací na prostředky spuštěné v samostatné doméně. Sdílení prostředků mezi zdroji (CORS) umožňuje Access-Control-Allow-Origin
deklarovat, které zdroje můžou volat koncové body ve vaší aplikaci funkcí.
Když nakonfigurujete seznam Povolený původ pro vaši aplikaci funkcí, Access-Control-Allow-Origin
záhlaví se automaticky přidá do všech odpovědí z koncových bodů HTTP ve vaší aplikaci funkcí.
Pokud existuje jiná položka domény, zástupný znak (*) se ignoruje.
Ověřování
Pokud funkce používají trigger HTTP, můžete vyžadovat, aby se nejprve ověřila volání. App Service podporuje ověřování Microsoft Entra a přihlašování s poskytovateli sociálních sítí, jako je Facebook, Microsoft a X. Informace o konfiguraci konkrétních zprostředkovatelů ověřování najdete v tématu Aplikace Azure Přehled ověřování služby.