Průběžné nasazování do Azure App Service
Azure App Service umožňuje průběžné nasazování z GitHub, Bitbucketua Azure Repos načítá nejnovější aktualizace.
Poznámka
Stránka Vývojové centrum (Classic) v Azure Portal, starší verze funkce nasazení, byla v březnu 2021 zastaralá. Tato změna nemá vliv na stávající nastavení nasazení ve vaší aplikaci a můžete pokračovat ve správě nasazení aplikace ze stránky Deployment Center na portálu.
Příprava úložiště
Pokud chcete získat automatizovaná sestavení Azure App Service build serveru, ujistěte se, že kořenový adresář úložiště obsahuje správné soubory ve vašem projektu.
| Runtime (Modul runtime) | Soubory kořenového adresáře |
|---|---|
| ASP.NET (pouze Windows) | *.sln, *.csproj nebo default.aspx |
| ASP.NET Core | *.sln nebo *.csproj |
| PHP | Index.php |
| Ruby (jenom Linux) | Gemfile |
| Node.js | server.js, app.js nebo package.jspomocí počátečního skriptu |
| Python | * .py, requirements.txt, neboruntime.txt |
| HTML | default.htm, default.html, default.asp, index.htm, index.html nebo iisstart.htm |
| WebJobs | <job_name>/run.<extension> v části _ App Data/jobs/continuous for continuous WebJobs nebo App _ Data/jobs/triggered for triggered WebJobs. Další informace najdete v dokumentaci ke službě Kudu WebJobs. |
| Functions | Viz Průběžné nasazování pro Azure Functions. |
Pokud chcete nasazení přizpůsobit, zahrnte do kořenového adresáře úložiště soubor .deployment. Další informace najdete v tématu Přizpůsobení nasazení a Vlastní skript nasazení.
Poznámka
Pokud použijete Visual Studio, Visual Studio úložiště vytvořit za vás. Váš projekt bude okamžitě připraven k nasazení přes Git.
Konfigurace zdroje nasazení
V Azure Portalpřejděte na stránku pro správu vaší App Service aplikace.
V levém podokně vyberte Deployment Center. Pak vyberte Nastavení.
V poli Zdroj vyberte jednu z možností CI/CD:

Pokračujte výběrem karty odpovídající vašemu poskytovateli sestavení.
GitHub Actions je výchozí zprostředkovatel sestavení. Pokud chcete poskytovatele změnit, vyberte Změnit poskytovatele App Service > Build Service (Kudu) > OK.
Poznámka
Pokud chcete Azure Pipelines jako zprostředkovatele sestavení pro vaši App Service, nakonfigurujte CI/CD přímo z Azure Pipelines. Nekonfigurujte ji v App Service. Možnost Azure Pipelines vás nasměrovat správným směrem.
Pokud nasazujete z GitHub, vyberte Autorizovat a postupujte podle pokynů k autorizaci. Pokud chcete aplikaci nasadit z úložiště jiného uživatele, vyberte Změnit účet.
Po autorizaci účtu Azure u GitHub vyberte organizace, úložiště a větev, pro které chcete CI/CD nakonfigurovat. Pokud nemůžete najít organizaci nebo úložiště, možná budete muset povolit další oprávnění pro GitHub. Další informace najdete v tématu Správa přístupu k úložištům vaší organizace.
Když GitHub zprostředkovatel sestavení vyberete Akce sestavení, můžete vybrat soubor pracovního postupu, který chcete, pomocí rozevíracích seznamů Zásobník modulu runtime a Verze. Azure potvrdí tento soubor pracovního postupu do vybraného úložiště GitHub pro zpracování úloh sestavení a nasazení. Pokud chcete soubor před uložením změn zobrazit, vyberte Náhled souboru.
Poznámka
App Service rozpozná nastavení zásobníku jazyka vaší aplikace a vybere nejvhodnější šablonu pracovního postupu. Pokud zvolíte jinou šablonu, může se nasazovat aplikace, která nefunguje správně. Další informace najdete v tématu Jak funguje zprostředkovatel sestavení GitHub Actions.
Vyberte Uložit.
Nová potvrzení ve vybraném úložišti a větev se teď průběžně nasazují do App Service aplikace. Potvrzení a nasazení můžete sledovat na kartě Protokoly.
Zakázání průběžného nasazování
V Azure Portalpřejděte na stránku pro správu vaší App Service aplikace.
V levém podokně vyberte Deployment Center. Pak vyberte Nastavení > Odpojit:

Soubor pracovního postupu GitHub Actions se ve výchozím nastavení zachová v úložišti, ale bude pokračovat v aktivaci nasazení do vaší aplikace. Pokud chcete soubor z úložiště odstranit, vyberte Odstranit soubor pracovního postupu.
Vyberte OK.
Co se stane s aplikací během nasazování?
Všechny oficiálně podporované metody nasazení mění soubory ve složce /home/site/wwwroot vaší aplikace. Tyto soubory se používají ke spuštění vaší aplikace. Nasazení proto může selhat z důvodu uzamčených souborů. Aplikace se také může chovat nepředvídatelně během nasazování, protože všechny soubory nejsou aktualizovány najednou. Toto chování je nežádoucí pro aplikaci pro zákazníky. Existuje několik způsobů, jak se těmto problémům vyhnout:
- Spusťte aplikaci přímo z balíčku ZIP,aniž byste ji rozbalili.
- Zastavte aplikaci nebo pro ní během nasazování povolte offline režim. Další informace najdete v tématu Řešení uzamčených souborů během nasazování.
- Nasazení do pracovního slotu se zapnutým automatickým prohozením
Jak funguje zprostředkovatel sestavení GitHub Actions
Zprostředkovatel GitHub Actions sestavení je možnost CI/CD z GitHub. K nastavení CI/CD se dokončí tyto akce:
- Do úložiště GitHub pracovní GitHub ch postupů GitHub Actions zařídí úlohy sestavení a nasazení, které App Service.
- Přidá profil publikování pro vaši aplikaci jako tajný GitHub publikování. Soubor pracovního postupu používá tento tajný kód k ověření pomocí App Service.
- Zaznamenává informace z protokolů spuštění pracovního postupu a zobrazuje je na kartě Protokoly v Centru nasazení vaší aplikace.
Poskytovatele sestavení GitHub Actions můžete přizpůsobit těmito způsoby:
- Po vygenerování souboru pracovního postupu ve vašem úložišti GitHub pracovního postupu. Další informace najdete v tématu Syntaxe pracovního postupu pro GitHub akcí. Jen se ujistěte, že se pracovní postup App Service pomocí akce azure/webapps-deploy.
- Pokud je vybraná větev chráněná, stále můžete zobrazit náhled souboru pracovního postupu bez uložení konfigurace a pak ji ručně přidat do úložiště. Tato metoda vám nedá integraci protokolů s Azure Portal.
- Místo použití profilu publikování nasaďte pomocí instančního objektu v Azure Active Directory.
Ověřování pomocí objektu služby
Tato volitelná konfigurace nahrazuje výchozí ověřování profily publikování ve vygenerované souboru pracovního postupu.
Instanční objekt vygeneruje příkazem az ad sp create-for-rbac v Azure CLI. V následujícím příkladu nahraďte <subscription-id> <group-name> , a <app-name> vlastními hodnotami:
az ad sp create-for-rbac --name "myAppDeployAuth" --role contributor \ --scopes /subscriptions/<subscription-id>/resourceGroups/<group-name>/providers/Microsoft.Web/sites/<app-name> \ --sdk-authDůležité
V případě zabezpečení udělte k objektu služby minimální požadovaný přístup. Rozsah v předchozím příkladu je omezený na konkrétní aplikaci App Service, a ne na celou skupinu prostředků.
Uložte celý výstup JSON pro další krok, včetně nejvyšší úrovně
{}.V GitHubve svém úložišti vyberte Nastavení > Secrets Add a new > secret (Přidat nový tajný kód).
Celý výstup JSON z příkazu Azure CLI vložte do pole hodnoty tajného kódu. Zadejte pro tajný kód název, například
AZURE_CREDENTIALS.V souboru pracovního postupu vygenerovaném Centrem nasazení upravte krok tak, aby vypadal jako v následujícím příkladu (který se upravuje ze Node.js
azure/webapps-deploypracovního postupu):- name: Sign in to Azure # Use the GitHub secret you added. - uses: azure/login@v1 with: creds: ${{ secrets.AZURE_CREDENTIALS }} - name: Deploy to Azure Web App # Remove publish-profile. - uses: azure/webapps-deploy@v2 with: app-name: '<app-name>' slot-name: 'production' package: . - name: Sign out of Azure. run: | az logout
Nasazení z jiných úložišť
Pro Windows můžete ručně nakonfigurovat průběžné nasazování z cloudového úložiště Git nebo Mercurial, které portál přímo nepodporuje, jako je GitLab. To můžete udělat tak, že v rozevíracím seznamu Zdroj vyberete Externí Git. Další informace najdete v tématu Nastavení průběžného nasazování pomocí ručních kroků.