Prozkoumání a přizpůsobení šablony Azure Developer CLI

V tomto rychlém startu prozkoumáte a přizpůsobíte šablonu Azure Developer CLI. Šablona hello-azd poskytuje jednoduchý výchozí bod pro vytváření a nasazování aplikací do Azure pomocí Azure Developer CLI (azd). Tento rychlý průvodce rozšiřuje koncepty, které byly demonstrovány v článku Rychlý průvodce – nasazení šablony azd.

Požadavky

K dokončení tohoto rychlého startu v prohlížeči budete potřebovat:

  • Přístup ke službě GitHub Codespaces

Případně můžete tento rychlý start dokončit pomocí místních nástrojů:

Prozkoumání struktury šablony Azure Developer CLI

azd Šablony jsou standardní úložiště kódu s dalšími zahrnutými prvky. Všechny azd šablony sdílejí podobnou strukturu souborů na azd základě konvencí:

  • infra složka – Obsahuje veškeré soubory kódu infrastruktury v Bicep nebo Terraform pro šablonu azd. azd spustí tyto soubory a vytvoří prostředky Azure vyžadované vaší aplikací.
  • src složka – Obsahuje zdrojový kód aplikace. azd balí a nasazuje kód na základě konfigurací v azure.yaml.
  • azure.yaml soubor – Konfigurační soubor, který mapuje složky zdrojového kódu v projektu na prostředky Azure definované ve infra složce pro nasazení. Můžete například definovat službu api a webovou front-end službu v samostatných složkách a mapovat je na různé prostředky Azure pro nasazení.
  • .azure složka – Obsahuje základní konfigurace Azure, jako je umístění pro nasazení prostředků.

Například většina azd šablon odpovídá následující struktuře složek:

snímek obrazovky znázorňující strukturu šablony Azure Developer CLI

Další podrobnosti o struktuře azd.

Nastavení ukázkové šablony

hello-azd je ukázková šablona navržená tak, aby předváděla azd základní funkce, které můžete nasadit do Azure pomocí jediného příkazu. Šablona poskytuje přátelské uživatelské rozhraní s informacemi o azd a malým ukázkovým nástrojem, který umožňuje nahrávat a zobrazovat podpůrné lístky.

Šablona podporuje následující funkce:

  • Balení a nasazení kontejnerizované aplikace pro Azure Container Apps.
  • Vytvoří prostředky Azure potřebné aplikací, jako je databáze Azure Cosmos DB.
  • Pomocí příkazu můžete automaticky nakonfigurovat kanál CI/CD.azd pipeline config

Při nastavování šablony postupujte takto:

  1. Otevřete úložiště šablon hello-azd na GitHubu.

  2. Vyberte tlačítko Kód a pak vyberte Codespaces.

  3. Vytvořte nový Codespace pro spuštění plně nakonfigurovaného vývojového prostředí v prohlížeči. Možná budete muset chvíli počkat, než se prostředí inicializuje.

  4. Po načtení prostředí Codespaces inicializujte azd šablonu pomocí azd init příkazu:

    azd init -t hello-azd
    
  5. Po zobrazení výzvy zadejte název azd prostředí, například helloazd.

Prozkoumání šablony

Když máte šablonu otevřenou ve zvoleném nástroji, můžete procházet strukturu složek a prozkoumat, jak azd šablony fungují:

  1. src Rozbalte složku a zobrazte zdrojový kód aplikace.

    • Tato hello-azd šablona obsahuje kontejnerizovanou aplikaci .NET, která poskytuje jednoduché uživatelské rozhraní pro informace o azd ukázkových datech lístků a jejich správu. azd podporuje také další jazyky, jako je JavaScript a Python.
    • Po spuštění azd upse aplikace zabalí jako image kontejneru a nasadí se do Azure Container Apps.
  2. Rozbalte složku infra a prozkoumejte soubory s infrastrukturním kódem.

    • Tato šablona používá soubory Bicep (.bicep) k vytváření prostředků Azure, ale můžete také použít Terraform (.tf).

    • Soubor main.bicep vytvoří prostředky Azure odkazováním na další moduly Bicep ve infra složce, jako je účet Azure Storage:

      // Omitted...
      
      // Create a storage account
      module storage './core/storage/storage-account.bicep' = {
          name: 'storage'
          scope: rg
          params: {
          name: !empty(storageAccountName) ? storageAccountName : '${abbrs.storageStorageAccounts}${resourceToken}'
          location: location
          tags: tags
          containers: [
              {
              name: 'attachments'
              }
          ]
          }
      }
      
      // Omitted...
      
  3. V kořenovém adresáři šablony otevřete azure.yaml soubor a zobrazte základní konfigurace šablon:

    • Šablona definuje jednu službu s názvem aca.

    • Konfigurace aca služby dává azd pokyn k zabalení a nasazení zdrojového kódu ve složce src do Azure kontejnerové aplikace, kterou zřídily moduly Bicep, které jste prozkoumali dříve.

    • Konfigurace docker dávají pokyn azd k zabalení a nasazení aplikace jako kontejneru.

      metadata:
        template: hello-azd-dotnet  # Specifies the template being used
      name: azd-starter  # Name of the project
      services:
        aca:  # Define the Azure Container App service
          project: ./src  # Path to the source code
          language: csharp  # Programming language
          host: containerapp  # Hosting service
          docker:
            path: ./Dockerfile  # Location of the Dockerfile
      

Aktualizace šablony

V šabloně můžete provádět změny, které ovlivní nasazenou aplikaci a prostředky. V tomto příkladu provedete v aplikaci dvě malé změny a prozkoumáte nasazené výsledky:

  • Aktualizace uvítacího textu záhlaví aplikace na vlastní zprávu
  • Aktualizujte vytvořený účet úložiště tak, aby se místo jednoho vytvořily dva kontejnery objektů blob.

Pokud chcete provést tyto změny, proveďte následující kroky:

  1. src > Components > Pages Ve složce otevřete komponentuHome.razor.

  2. Text záhlaví Hello, Azure Developer CLI! v horní části stránky nahraďte jinou zprávou, jako je Hello, přizpůsobená šablona. Změny uložte.

    <MudText Typo="Typo.h2" GutterBottom="true">Hello, customized template!</MudText>
    
  3. infra Ve složce otevřete main.bicep soubor.

  4. Vyhledejte blok kódu v Bicep kolem řádku 75, který vytvoří úložiště a kontejner pro blob.

    // Create a storage account
    module storage './core/storage/storage-account.bicep' = {
      name: 'storage'
      scope: rg
      params: {
        name: !empty(storageAccountName) ? storageAccountName : '${abbrs.storageStorageAccounts}${resourceToken}'
        location: location
        tags: tags
        containers: [
          {
            name: 'attachments'
          }
        ]
      }
    }
    

    Nahraďte kód následujícím fragmentem kódu:

    // Create a storage account
    module storage './core/storage/storage-account.bicep' = {
      name: 'storage'
      scope: rg
      params: {
        name: !empty(storageAccountName) ? storageAccountName : '${abbrs.storageStorageAccounts}${resourceToken}'
        location: location
        tags: tags
        containers: [
          {
            name: 'attachments'
          },
          {
            name: 'archive'
          }
        ]
      }
    }
    
    

Spusťte šablonu

Po provedení změn pomocí azd up příkazu zřiďte a nasaďte prostředky aplikace:

  1. Otevřete terminál v adresáři projektu.

  2. Pokud chcete šablonu zřídit a nasadit, spusťte azd up příkaz:

    azd up
    

    Tento příkaz:

    • Zabalení aplikace pro nasazení
    • Zřízení požadovaných prostředků Azure
    • Nasazení aplikace s aktualizovanými změnami
    • Tisk adresy URL nasazené aplikace
  3. Pokud chcete aktualizovanou aplikaci zobrazit živě, otevřete adresu URL vytištěnou v protokolech výstupu azd konzoly v prohlížeči.

    Snímek obrazovky znázorňující aktualizovanou hlavičku aplikace

  4. Pokud chcete zobrazit dva vytvořené kontejnery objektů blob, přejděte na webu Azure Portal k vytvořenému účtu úložiště.

    Snímek obrazovky znázorňující vytvořené kontejnery objektů blob

Závěr

V tomto rychlém startu jste prozkoumali strukturu hello-azd šablony, přizpůsobili jste její aplikaci a infrastrukturu a nasadili jste ji do Azure pomocí Azure Developer CLI. Pokud chcete pokročilejší scénáře, prozkoumejte další šablony nebo se podrobněji ponořte do azd dokumentace.

Další kroky