Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
A CLI do Desenvolvedor do Azure (azd) permite que você gerencie vários ambientes de implantação para seus projetos, para manter as configurações separadas para desenvolvimento, teste e produção. Este artigo explica conceitos essenciais sobre como você pode usar ambientes para gerenciar seu processo de desenvolvimento e implantação.
O que são ambientes?
Um ambiente na CLI do Desenvolvedor do Azure (azd) é um conjunto nomeado de configurações para uma implantação de seu aplicativo, como desenvolvimento, teste ou prod. Ambientes diferentes podem ser configurados com valores diferentes. Os ambientes atendem a várias finalidades importantes:
- Isolamento: mantenha as implantações de desenvolvimento, teste e produção separadas.
- Gerenciamento de configuração: mantenha configurações diferentes para cada ambiente.
- Colaboração: permitir que os membros da equipe trabalhem com seus próprios ambientes.
- Organização de recursos: agrupar e provisionar recursos do Azure por ambiente.
- Reprodutibilidade: garanta implantações consistentes em diferentes estágios.
Cada ambiente tem seu próprio grupo de recursos do Azure e configurações. Esse isolamento de ambiente ajuda a impedir que alterações em um ambiente afetem outras pessoas.
Estrutura e configuração do ambiente
Os ambientes da CLI do Desenvolvedor do Azure (azd) residem em uma estrutura de diretório dentro de seu projeto:
├── .azure [Created when you run azd init or azd up]
│ ├── <environment-name-1> [Directory for environment-specific configurations]
│ │ ├── .env [Environment variables for this environment]
│ │ └── config.json [Additional configuration parameters for this environment]
│ ├── <environment-name-2> [Another environment]
│ │ ├── .env
│ │ └── config.json
│ └── config.json [Global azd configuration]
Os principais componentes dessa estrutura são:
-
.azurediretório: o diretório raiz para todas as configurações de ambiente. Excluído do controle do código-fonte pelo arquivo por.gitignorepadrão. -
Diretórios específicos do ambiente: diretórios com o nome de seus ambientes, como
dev, ,testprod. -
.envarquivo: contém variáveis específicas do ambiente usadas pelo aplicativo e durante a implantação. -
config.json: usado para direcionar configurações que influenciam oazdcomportamento e os recursos do comando. Esse arquivo não se destina a ser usado diretamente pelos usuários finais.
Nomes de ambiente
A nomenclatura de ambiente normalmente segue estes padrões:
- Projetos de equipe:
<project-name-[dev/int/prod]> - Projetos pessoais:
<personal-unique-alias-[dev/int/prod]>
Essas convenções de nomenclatura não são impostas e azd são configuráveis pelo usuário.
Variáveis de ambiente
As variáveis de ambiente da CLI do Desenvolvedor do Azure fornecem uma maneira de armazenar configurações que influenciam e podem variar entre ambientes. Quando você executa comandos da CLI do Desenvolvedor do Azure, essas variáveis são usadas para:
- Defina as configurações do aplicativo, como pontos de extremidade para os serviços do Azure.
- Defina parâmetros de infraestrutura para influenciar o processo de provisionamento.
O .env arquivo contém essas variáveis em um formato padrão:
AZURE_ENV_NAME=dev
AZURE_LOCATION=eastus
AZURE_SUBSCRIPTION_ID=00000000-0000-0000-0000-000000000000
AZURE_RESOURCE_GROUP=rg-dev-12345
SERVICE_WEB_HOSTNAME=web-dev-12345.azurewebsites.net
SERVICE_API_HOSTNAME=api-dev-12345.azurewebsites.net
As variáveis de ambiente comuns incluem:
| Variável | Descrição |
|---|---|
AZURE_ENV_NAME |
Nome do ambiente atual |
AZURE_LOCATION |
Região do Azure em que os recursos são implantados |
AZURE_SUBSCRIPTION_ID |
ID da assinatura do Azure usada para esse ambiente |
AZURE_RESOURCE_GROUP |
Nome do grupo de recursos para esse ambiente |
Dica
Para outras variáveis de ambiente comuns e exemplos específicos do serviço, visite a documentação de variáveis de ambiente .
Ao trabalhar com variáveis de ambiente:
- Evite confirmar
.envarquivos no controle do código-fonte. Se a configuração do ambiente precisar ser mantida ou compartilhada, os usuários deverão usar ambientes remotos. - Use a nomenclatura consistente entre ambientes.
- Use o
azd env setcomando para atualizar variáveis com segurança.
Aviso
Nunca armazene segredos em um arquivo da CLI .env do Desenvolvedor do Azure. Esses arquivos podem ser facilmente compartilhados ou copiados em locais não autorizados ou verificados no controle do código-fonte. Use serviços como o Azure Key Vault ou o RBAC (Controle de Acesso Baseado em Função) do Azure para soluções protegidas ou sem segredo.
Comparar outros ambientes de estrutura
Muitas estruturas de programação e ferramentas, como Node.js, Django ou React, usam .env arquivos para configuração. Embora a CLI do Desenvolvedor do Azure (azd) também use arquivos, há diferenças .env importantes:
| Conceito | CLI do Desenvolvedor do Azure .env |
Arquivos da estrutura .env |
|---|---|---|
| Localidade | Armazenado em .azure/<environment-name>/.env |
Normalmente armazenado no diretório raiz do projeto |
| Suporte ao ambiente | Suporte para vários ambientes definidos pelo usuário (desenvolvimento, teste, prod) | Geralmente, exigem a alternância manual de arquivos ou convenções de nomenclatura (.env.development, .env.production) |
| Mecanismo de carregamento | Carregados automaticamente por azd comandos |
Normalmente, exigem o carregamento explícito no código do aplicativo ou scripts de build |
| Integração | Profundamente integrado aos serviços do Azure e ao provisionamento de recursos | Configuração de uso geral, não específica do Azure |
| Gerenciamento de variáveis | Gerenciado por meio de azd env comandos |
Normalmente editado manualmente ou por meio de scripts personalizados |
Embora ambos atendam a propósitos semelhantes, a abordagem da CLI do Desenvolvedor do Azure adiciona estrutura e ferramentas projetadas para gerenciar vários ambientes de implantação e recursos do .env Azure.
Observação
Se o projeto já usa arquivos específicos .env da estrutura, você pode manter ambos os sistemas de configuração sem conflitos.
azd variáveis de ambiente substituem variáveis de ambiente do sistema com o mesmo nome para algumas operações.