Explorar e personalizar um modelo da CLI do Desenvolvedor do Azure

Neste início rápido, você explorará e personalizará um modelo da CLI do Desenvolvedor do Azure. O modelo hello-azd fornece um ponto de partida simples para criar e implantar aplicativos no Azure usando a CLI do Desenvolvedor do Azure (azd). Este início rápido expande os conceitos demonstrados no Início Rápido – Implantar um modelo azd.

Pré-requisitos

Para concluir este início rápido no navegador, você precisará:

  • Acesso aos codespaces do GitHub

Como alternativa, para concluir este início rápido usando as ferramentas locais:

Explorar a estrutura de modelos da CLI para Desenvolvedores do Azure

azd os modelos são repositórios de código padrão com ativos adicionais incluídos. Todos os azd modelos compartilham uma estrutura de arquivo semelhante com base em azd convenções:

  • Pasta infra – Contém toda a infraestrutura do Bicep ou do Terraform como arquivos de código para o modelo azd. azd executa esses arquivos para criar os recursos do Azure exigidos pelo seu aplicativo.
  • src pasta – Contém o código-fonte do aplicativo. azd empacota e implanta o código com base nas configurações em azure.yaml.
  • Arquivo azure.yaml – um arquivo de configuração que mapeia as pastas de código-fonte em seu projeto para os recursos do Azure, definidos na pasta infra para implantação. Por exemplo, você pode definir um serviço de API e um serviço de front-end da Web em pastas separadas e mapeá-los para diferentes recursos do Azure para implantação.
  • .azure pasta – Contém configurações essenciais do Azure, como o local para implantar recursos.

Por exemplo, a maioria dos azd modelos corresponde à seguinte estrutura de pastas:

Uma captura de tela mostrando uma estrutura de modelo da CLI do Desenvolvedor do Azure.

Acesse o artigo Visão geral dos modelos do Azure Developer CLI para obter mais detalhes sobre a estrutura do modelo azd.

Configurar o modelo de exemplo

hello-azd é um modelo de exemplo projetado para mostrar recursos essenciais dos azd quais você pode implantar no Azure usando um único comando. O modelo fornece uma interface do usuário amigável com informações sobre azd e uma ferramenta de demonstração simples que permite carregar e exibir tíquetes de suporte.

O modelo dá suporte aos seguintes recursos:

  • Empacota e implanta um aplicativo em contêineres nos Aplicativos de Contêiner do Azure
  • Cria os recursos do Azure necessários para o aplicativo, como um banco de dados do Azure Cosmos DB
  • Pode configurar automaticamente um pipeline de CI/CD usando o azd pipeline config comando

Siga estas etapas para configurar o modelo:

  1. Abra o repositório de modelos hello-azd no GitHub.

  2. Selecione o botão Código e, em seguida, selecione Codespaces.

  3. Crie um novo Codespace para iniciar um ambiente de desenvolvimento totalmente configurado em seu navegador. Talvez seja necessário aguardar um momento para que o ambiente seja inicializado.

  4. Depois que o ambiente de Codespaces for carregado, inicialize o azd modelo usando o azd init comando:

    azd init -t hello-azd
    
  5. Quando solicitado, insira um nome para o azd ambiente, como helloazd.

Explorar o modelo

Com o modelo aberto em sua ferramenta de escolha, você pode navegar pela estrutura de pastas para entender melhor como os modelos funcionam:

  1. Expanda a src pasta para exibir o código-fonte do aplicativo.

    • O modelo hello-azd inclui um aplicativo .NET containerizado que fornece uma UI simples para aprender sobre azd e gerenciar dados de bilhetes de exemplo. azd também dá suporte a outras linguagens, como JavaScript e Python.
    • Quando você executa azd up, o aplicativo é empacotado como uma imagem de contêiner e implantado nos Aplicativos de Contêiner do Azure.
  2. Expanda a infra pasta para explorar a infraestrutura como arquivos de código.

    • Esse modelo usa arquivos Bicep (.bicep) para criar recursos do Azure, mas você também pode usar o Terraform (.tf).

    • O arquivo main.bicep cria os recursos do Azure fazendo referência a outros módulos Bicep na pasta infra, como uma conta de Armazenamento do Azure:

      // 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. Na raiz do modelo, abra o azure.yaml arquivo para exibir as configurações de modelo essenciais:

    • O modelo define um serviço chamado aca.

    • A configuração do serviço aca instrui azd a empacotar e implantar o código-fonte contido na pasta src para o Aplicativo de Contêiner do Azure provisionado pelos módulos Bicep que você explorou anteriormente.

    • As docker configurações instruem azd o empacotamento e a implantação do aplicativo como um contêiner.

      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
      

Atualizar o modelo

Você pode fazer alterações no modelo para influenciar o aplicativo e os recursos implantados. Neste exemplo, você faz duas pequenas alterações no aplicativo e explora os resultados implantados:

  • Atualize o texto de boas-vindas do cabeçalho do aplicativo com uma mensagem personalizada sua.
  • Atualizar a conta de armazenamento criada para que ela crie dois contêineres de blob em vez de um

Para fazer essas alterações, conclua as seguintes etapas:

  1. Na pasta src > Components > Pages, abra o componente Home.razor.

  2. Substitua o texto do cabeçalho Hello, CLI do Desenvolvedor do Azure na parte superior da página por uma mensagem diferente, como Olá, modelo personalizado! e salve suas alterações.

    <MudText Typo="Typo.h2" GutterBottom="true">Hello, customized template!</MudText>
    
  3. Na pasta infra, abra o arquivo main.bicep.

  4. Localize o bloco de código Bicep em torno da linha 75 que cria uma conta de armazenamento e um contêiner de 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'
          }
        ]
      }
    }
    

    Substitua o código pelo seguinte snippet:

    // 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'
          }
        ]
      }
    }
    
    

Executar o modelo

Depois de fazer as alterações, use o azd up comando para provisionar e implantar os recursos do aplicativo:

  1. Abra um terminal no diretório do projeto.

  2. Para provisionar e implantar o modelo, execute o azd up comando:

    azd up
    

    Este comando vai:

    • Empacotar o aplicativo para implantação
    • Provisionar os recursos necessários do Azure
    • Implantar seu aplicativo com as alterações atualizadas
    • Imprimir a URL do aplicativo implantado
  3. Para ver o aplicativo atualizado em tempo real, abra a URL impressa nos logs de saída do console azd no navegador.

    Uma captura de tela mostrando o cabeçalho do aplicativo atualizado.

  4. Para exibir os dois contêineres de blob que foram criados, navegue até a conta de armazenamento criada no portal do Azure.

    Uma captura de tela mostrando os contêineres de blob criados.

Conclusão

Neste início rápido, você explorou a estrutura do hello-azd modelo, personalizou seu aplicativo e infraestrutura e o implantou no Azure usando a CLI do Desenvolvedor do Azure. Para cenários mais avançados, explore outros modelos ou aprofunde-se na azd documentação.

Próximas etapas