Nasazení aplikace pro App Service

Azure App Service platforma pro hostování webů v Azure. Nasazení webové aplikace do Azure App Service lze provést ručně nebo pomocí automatizovaného procesu. Tato část příručky popisuje metody nasazení, které lze aktivovat ručně nebo pomocí skriptu pomocí příkazového řádku nebo aktivované ručně pomocí Visual Studio.

V této části budete provádět následující úlohy:

  • Stáhněte si a sestavte ukázkovou aplikaci.
  • Vytvořte Azure App Service webové aplikace pomocí Azure Cloud Shell.
  • Nasaďte ukázkovou aplikaci do Azure pomocí Gitu.
  • Nasaďte do aplikace změnu pomocí Visual Studio.
  • Přidejte do webové aplikace pracovní slot.
  • Nasaďte aktualizaci do přípravného slotu.
  • Prohoďte přípravný a produkční slot.

Stažení a otestování aplikace

aplikace použitá v tomto průvodci je předem vytvořená aplikace ASP.NET Core, jednoduchá čtečka kanálů. jedná se o Razor aplikaci ASP.NET Core pages, která používá Microsoft.SyndicationFeed.ReaderWriter rozhraní API k načtení informačního kanálu RSS/Atom a zobrazení položek zpráv v seznamu.

Tento kód si můžete prohlédnout, ale je důležité pochopit, že tato aplikace nemá nic zvláštní. je to jenom jednoduchá ASP.NET Core aplikace pro ilustrativní účely.

Z příkazového prostředí Stáhněte kód, sestavte projekt a spusťte jej následujícím způsobem.

Poznámka

Uživatelé systému Linux/macOS by měli provádět vhodné změny cest, např. pomocí lomítka ( / ) místo zpětného lomítka ( \ ). *

  1. Naklonujte kód do složky na místním počítači.

    git clone https://github.com/dotnet-architecture/simple-feed-reader/
    
  2. Změňte pracovní složku na vytvořenou složku s jednoduchým kanálem pro čtení .

    cd .\simple-feed-reader\SimpleFeedReader
    
  3. Obnovte balíčky a sestavte řešení.

    dotnet build
    
  4. Spusťte aplikaci.

    dotnet run
    

    Příkaz dotnet Run je úspěšný.

  5. Otevřete prohlížeč a přejděte na adresu http://localhost:5000. Aplikace umožňuje zadat nebo vložit adresu URL informačního kanálu syndikace a zobrazit seznam položek zpráv.

    Aplikace, která zobrazuje obsah informačního kanálu RSS

  6. Jakmile budete spokojeni s tím, že aplikace funguje správně, vypněte ji stisknutím kombinace kláves CTRL + + C v příkazovém prostředí.

Vytvoření webové aplikace v Azure App Service

K nasazení aplikace budete muset vytvořit webovou aplikaciApp Service. Po vytvoření webové aplikace ji nasadíte z místního počítače pomocí Gitu.

  1. Přihlaste se k Azure Cloud Shell. Poznámka: když se poprvé přihlásíte, Cloud Shell se zobrazí výzva k vytvoření účtu úložiště pro konfigurační soubory. Přijměte výchozí hodnoty nebo zadejte jedinečný název.

  2. Následující postup použijte Cloud Shell.

    a. Deklarujte proměnnou pro uložení názvu vaší webové aplikace. Název musí být jedinečný, aby bylo možné použít výchozí adresu URL. Použití $RANDOM funkce bash k vytvoření názvu garantuje jedinečnost a výsledky ve formátu webappname99999 .

    webappname=mywebapp$RANDOM
    

    b. Vytvořte skupinu prostředků. Skupiny prostředků poskytují prostředky pro agregaci prostředků Azure, které se mají spravovat jako skupina.

    az group create --location centralus --name AzureTutorial
    

    azPříkaz vyvolá Azure CLI. Rozhraní příkazového řádku lze spustit místně, ale jeho použití v Cloud Shell šetří čas a konfiguraci.

    c. Vytvořte plán App Service v úrovni S1. Plán App Service je seskupení webových aplikací, které sdílejí stejnou cenovou úroveň. Vrstva S1 není volná, ale vyžaduje se pro funkci přípravného slotu.

    az appservice plan create --name $webappname --resource-group AzureTutorial --sku S1
    

    d. Vytvořte prostředek webové aplikace pomocí App Serviceho plánu ve stejné skupině prostředků.

    az webapp create --name $webappname --resource-group AzureTutorial --plan $webappname
    

    e. Nastavte větev nasazení na main v appsettings konfiguraci.

    az webapp config appsettings set --name $webappname --resource-group AzureTutorial --settings DEPLOYMENT_BRANCH=main
    

    f. Nastavte přihlašovací údaje pro nasazení. Tyto přihlašovací údaje pro nasazení platí pro všechny webové aplikace v rámci vašeho předplatného. V uživatelském jméně Nepoužívejte speciální znaky.

    az webapp deployment user set --user-name REPLACE_WITH_USER_NAME --password REPLACE_WITH_PASSWORD
    

    například Nakonfigurujte webovou aplikaci tak, aby přijímala nasazení z místního Gitu a zobrazila adresu URL nasazení Git. Poznamenejte si tuto adresu URL pro referenci později.

    echo Git deployment URL: $(az webapp deployment source config-local-git --name $webappname --resource-group AzureTutorial --query url --output tsv)
    

    h. Zobrazí adresu URL webové aplikace. Pokud chcete zobrazit prázdnou webovou aplikaci, přejděte na tuto adresu URL. Poznamenejte si tuto adresu URL pro referenci později.

    echo Web app URL: http://$webappname.azurewebsites.net
    
  3. Pomocí příkazového prostředí v místním počítači přejděte do složky projektu webové aplikace (například .\simple-feed-reader\SimpleFeedReader). Spusťte následující příkazy a nastavte Git tak, aby se nastavila na adresu URL nasazení:

    a. Přidejte vzdálenou adresu URL do místního úložiště.

    git remote add azure-prod GIT_DEPLOYMENT_URL
    

    b. Nahrajte místní výchozí větev (Hlavní) do vzdálené větve nasazení Azure-prod (Main).

    git push azure-prod main
    

    Zobrazí se výzva k zadání přihlašovacích údajů pro nasazení, které jste vytvořili dříve. Sledujte výstup v příkazovém prostředí. Azure vytvoří aplikaci ASP.NET Core vzdáleně.

  4. V prohlížeči přejděte na adresu URL webové aplikace a Všimněte si, že je aplikace sestavená a nasazená. Další změny můžete zapsat do místního úložiště Git pomocí git commit . Tyto změny se vloží do Azure pomocí předchozího git push příkazu.

Nasazení pomocí Visual Studio

Poznámka

tato část se vztahuje pouze na Windows. Uživatelé Linux a macOS by měli provést změnu popsanou v kroku 2 níže. Uložte soubor a potvrďte změnu v místním úložišti pomocí git commit . Nakonec nahrajte změnu pomocí git push , jako v první části. *

Aplikace už je nasazená z příkazového prostředí. pojďme použít integrované nástroje Visual Studio k nasazení aktualizace do aplikace. na pozadí Visual Studio dosáhnout stejného účelu jako nástroje příkazového řádku, ale v rámci známého uživatelského rozhraní Visual Studio.

  1. Otevřete SimpleFeedReader. sln v Visual Studio.

  2. V Průzkumník řešení otevřete Pages\Index.cshtml. Změňte <h2>Simple Feed Reader</h2> na <h2>Simple Feed Reader - V2</h2> .

  3. Stisknutím kombinace kláves CTRL + + SHIFT + B sestavíte aplikaci.

  4. V Průzkumník řešení klikněte pravým tlačítkem na projekt a klikněte na publikovat.

    Snímek obrazovky, který ukazuje kliknutí pravým tlačítkem, publikování

  5. Visual Studio může vytvořit nový prostředek App Service, ale tato aktualizace bude publikována v rámci stávajícího nasazení. V dialogovém okně vybrat cíl publikování vyberte v seznamu na levé straně položku App Service a pak vyberte Vybrat existující. Klikněte na Publikovat.

  6. V dialogovém okně App Service potvrďte, že se v pravém horním rohu zobrazuje účet Microsoft nebo organizace, který se používá k vytvoření vašeho předplatného Azure. Pokud není, klikněte na rozevírací nabídku a přidejte ji.

  7. Zkontrolujte, jestli je vybrané správné předplatné Azure. V zobrazení vyberte Skupina prostředků. Rozbalte skupinu prostředků AzureTutorial a pak vyberte existující webovou aplikaci. Klikněte na OK.

    Snímek obrazovky s dialogem App Service pro publikování

Visual Studio sestaví a nasadí aplikaci do Azure. Přejděte na adresu URL webové aplikace. Ověřte, zda <h2> je úprava prvku živá.

Aplikace se změněným názvem

Sloty nasazení

Sloty nasazení podporují přípravu změn bez ovlivnění aplikace spuštěné v produkčním prostředí. Jakmile se dvoufázové verze aplikace ověří týmem zabezpečování kvality, produkční a přípravné sloty je možné prohodit. Aplikace v pracovním prostředí se tímto způsobem převýší na produkční prostředí. V následujících krocích se vytvoří přípravný slot, nasadí se nějaké změny a pracovní slot se po ověření zahodí k produkci.

  1. Přihlaste se k Azure Cloud Shell, pokud ještě není přihlášený.

  2. Vytvořte pracovní slot.

    a. Vytvořte slot nasazení s názvem Příprava.

    az webapp deployment slot create --name $webappname --resource-group AzureTutorial --slot staging
    

    b. Nastavte větev nasazení na main v appsettings konfiguraci.

    az webapp config appsettings set --name $webappname --resource-group AzureTutorial --slot staging --settings DEPLOYMENT_BRANCH=main
    

    c. Nakonfigurujte pracovní slot pro použití nasazení z místního Gitu a získejte adresu URL pracovního nasazení. Poznamenejte si tuto adresu URL pro referenci později.

    echo Git deployment URL for staging: $(az webapp deployment source config-local-git --name $webappname --resource-group AzureTutorial --slot staging --query url --output tsv)
    

    d. Zobrazit adresu URL přípravného slotu. Přejděte na adresu URL, abyste viděli prázdný přípravný slot. Poznamenejte si tuto adresu URL pro referenci později.

    echo Staging web app URL: http://$webappname-staging.azurewebsites.net
    
  3. v textovém editoru nebo Visual Studio upravte stránky nebo Index. cshtml tak, aby <h2> element četl <h2>Simple Feed Reader - V3</h2> a uložil soubor.

  4. potvrďte soubor do místního úložiště Git, a to buď pomocí stránky změny na kartě Team Explorer Visual Studio, nebo zadáním následujícího příkazu pomocí příkazového prostředí místního počítače:

    git commit -a -m "upgraded to V3"
    
  5. Pomocí příkazového prostředí místního počítače přidejte adresu URL pracovního nasazení jako vzdálené úložiště Git a odešlete potvrzené změny:

    a. Přidejte vzdálenou adresu URL pro přípravu do místního úložiště Git.

    git remote add azure-staging <Git_staging_deployment_URL>
    

    b. Nahrajte místní výchozí větev (Hlavní) do vzdálené větve nasazení Azure (hlavní).

    git push azure-staging main
    

    Počkejte, než Azure sestaví a nasadí aplikaci.

  6. Pokud chcete ověřit, že je hodnota V3 nasazená do přípravného slotu, otevřete dvě okna prohlížeče. V jednom okně přejděte na původní adresu URL webové aplikace. V druhém okně přejděte na adresu URL pracovní webové aplikace. Produkční adresa URL slouží jako v2 aplikace. Pracovní adresa URL slouží jako V3 aplikace.

    Snímek obrazovky s porovnáním oken prohlížeče

  7. V Cloud Shell Proměňte v produkčním prostředí ověřené/teplé pracovní sloty.

    az webapp deployment slot swap --name $webappname --resource-group AzureTutorial --slot staging
    
  8. Pomocí obnovení dvou oken prohlížeče ověřte, zda došlo k výměně.

    Porovnání oken prohlížeče po prohození

Souhrn

V této části byly dokončeny následující úkoly:

  • Stáhli a vytvořili jste ukázkovou aplikaci.
  • Vytvořili Azure App Service webovou aplikaci pomocí Azure Cloud Shell.
  • Nasadili jste ukázkovou aplikaci do Azure pomocí Gitu.
  • Nasadili jste do aplikace změnu pomocí Visual Studio.
  • Do webové aplikace se přidal pracovní slot.
  • Nasazení aktualizace do přípravného slotu.
  • Pracovní a produkční sloty se vyměnily.

v další části se dozvíte, jak vytvořit kanál DevOps s Azure Pipelines.

Další materiály ke čtení