Azure 배포 환경에 대한 Azure 개발자 CLI 지원
Azure 개발자 CLI(azd)는 Azure 배포 환경에 대한 지원을 제공합니다. ADE(Azure 배포 환경)는 미리 정의된 구독에 배포된 Azure 리소스의 미리 구성된 컬렉션입니다. Azure 거버넌스는 샌드박스, 테스트, 스테이징 또는 프로덕션과 같은 환경 유형에 따라 해당 구독에 적용됩니다. Azure 배포 환경을 사용하면 엔터프라이즈 보안 정책을 적용하고 IaC(미리 정의된 인프라) 템플릿으로 큐레이팅된 집합을 제공할 수 있습니다.
필수 조건
다음을 사용하여 azd
Azure 배포 환경에서 작업하기 위한 다음 필수 구성 요소를 완료했는지 확인합니다.
로컬로
azd
설치되거나 Cloud Shell을 통해 액세스할 수azd
있음개발자가 프로젝트에 대한 배포 환경 사용자 역할을 가지고 있는지 확인합니다.
팁
Azure 배포 환경에 대한 주요 개념을 이해하는 것은 Azure 배포 환경을 통해
azd
작업하는 데 필수적입니다.
Azure 배포 환경 지원 사용
같은 azd up
azd provision
표준 명령을 사용하여 배포 환경에 리소스를 프로비전하고 배포하도록 구성할 azd
수 있습니다. Azure 배포 환경에 대한 지원을 사용하도록 설정하려면 다음 명령을 실행합니다.
azd config set platform.type devcenter
설정devcenter
되면 platform.type
모든 azd
원격 환경 상태 및 프로비저닝이 새 개발자 센터 구성 요소를 활용합니다. 또한 이 구성은 로컬 템플릿의 infra
폴더가 효과적으로 무시됨을 의미합니다. 대신 리소스 azd
프로비저닝을 위해 개발자 센터 카탈로그에 정의된 인프라 템플릿 중 하나를 사용합니다.
다음 명령을 통해 개발자 센터 지원을 사용하지 않도록 설정할 수도 있습니다.
azd config unset platform
Azure 배포 환경 작업
개발 센터 기능을 사용하도록 설정하면 몇 가지 일반적인 azd
명령의 기본 동작이 이러한 원격 환경에서 작동하도록 변경됩니다. 개발 센터 기능은 표준 azd
원격 환경 지원 제공하는 기능을 확장합니다.
azd init
개발 센터 모드의 명령 환경에는 azd init
구성된 카탈로그에서 선택할 수 있는 모든 azd 호환 ADE 템플릿이 표시됩니다. init 프로세스 중에 템플릿 코드를 azure.yaml
복제한 후 azd
선택한 템플릿에 따라 선택한 구성이 있는 platform
섹션을 포함하도록 파일이 자동으로 업데이트됩니다. 구성에는 개발자 센터 이름, 카탈로그 및 환경 정의가 포함됩니다.
`azd init`
azd up
이 azd up
명령은 애플리케이션을 패키지, 프로비전 및 Azure 배포 환경에 배포합니다. 그러나 명령의 azd up
프로비전 단계에서는 원격 개발 센터에서 큐레이팅된 코드 기반 인프라 템플릿을 사용하고 배포 단계에서는 템플릿에 azd
소스 코드를 배포합니다. 개발 센터 모드를 사용하는 azd
동안 로컬 azd
템플릿의 폴더를 infra
무시하고 개발자 센터 템플릿을 사용하여 리소스만 프로비전합니다. 또한 이 명령은 Azure 배포 환경 프로젝트 또는 환경 유형과 같은 필요한 값을 묻는 메시지를 표시합니다.
azd up
azd template list
이 azd template list
명령은 기본 AZD Awesome 갤러리의 템플릿을 표시하는 대신 개발자 센터 카탈로그에 사용 가능한 인프라 템플릿을 표시합니다. 카탈로그는 개발 팀이 환경을 만드는 데 사용할 수 있는 큐레이팅되고 승인된 코드 기반 인프라 템플릿 집합을 제공합니다.
azd template list
azd provision
이 azd provision
명령은 새 개발자 센터 환경을 만듭니다. 이 명령은 환경 유형 또는 프로젝트와 같은 누락된 값을 묻는 메시지를 표시합니다. 명령이 실행되면 연결된 인프라 템플릿을 사용하여 해당 환경에 대한 올바른 Azure 리소스 집합을 프로비전합니다. 개발 센터 모드를 사용하는 azd
동안 로컬 azd
템플릿의 폴더를 infra
무시하고 개발자 센터 템플릿을 사용하여 리소스만 프로비전합니다.
azd provision
azd env list
이 azd env list
명령은 개발자 포털에 표시되는 것과 동일한 환경 목록을 표시합니다.
azd env list
Azure 배포 환경에 대한 리소스 태그 지정
azd
Azure 배포 환경에 대한 프로비저닝은 개발자 센터 카탈로그의 큐레이팅된 템플릿을 사용합니다. 카탈로그의 템플릿은 앱 서비스를 파일에서 연결할 수 있도록 프로비전된 Azure 리소스에 azure.yaml
태그를 할당하거나 할당하지 않을 수 있습니다. 템플릿에서 태그를 할당하지 않는 경우 다음 두 가지 방법 중 하나로 이 문제를 해결할 수 있습니다.
개발자 센터 카탈로그 관리자와 협력하여 프로비전된 Azure 리소스에 파일에 정의된
azure.yaml
서비스와 연결할 태그가 포함되어 있는지 확인합니다.태그를
resoureName
azure.yaml
사용하는 대신 파일에서 지정합니다.services: api: project: ./src/api host: containerapp language: js resourceName: sample-api-containerapp web: project: ./src/web host: containerapp language: js resourceName: sample-web-containerapp
개발 센터 설정 구성
여러 위치에서 개발 센터에 대한 설정을 정의 azd
할 수 있습니다. 이러한 위치에서 설정 결합하여 다음 우선 순위에 따라 최종 구성 집합을 만듭니다.
- 환경 변수
- Azd 환경 구성
- 프로젝트 구성
- 사용자 구성
azd
는 이러한 원본에서 누락된 구성 값을 자동으로 묻는 메시지를 표시합니다. 이러한 각 구성 옵션은 다음 섹션에 자세히 설명되어 있습니다.
환경 변수
다음 환경 변수가 검색되어 사용됩니다 azd
.
- AZURE_DEVCENTER_NAME
- AZURE_DEVCENTER_PROJECT
- AZURE_DEVCENTER_CATALOG
- AZURE_DEVCENTER_ENVIRONMENT_DEFINITION
- AZURE_DEVCENTER_ENVIRONMENT_TYPE
- AZURE_DEVCENTER_ENVIRONMENT_USER
구성 정의
파일의 환경 범위에서 azd
개발자 센터에 대한 구성을 .azure/<env>/config.json
정의합니다.
{
"platform": {
"config": {
"catalog": "SampleCatalog",
"environmentDefinition": "Todo",
"environmentType": "Dev",
"name": "sample-devcenter",
"Project": "SampleProject"
}
}
}
프로젝트 범위
파일 노드의 azd
프로젝트 범위에서 개발 센터에 대한 구성을 platform
azure.yaml
정의합니다.
name: todo-nodejs-mongo-aca
metadata:
template: todo-nodejs-mongo-aca@0.0.1-beta
platform:
type: devcenter
config:
catalog: SampleCatalog
environmentDefinition: Todo
name: sample-devcenter
project: SampleProject
services:
api:
project: ./src/api
host: containerapp
language: js
web:
project: ./src/web
host: containerapp
language: js
사용자 범위
파일의 사용자 범위에서 개발자 센터에 대한 구성을 ~/<user_profile>/.azd/config.json
정의합니다.
{
"platform": {
"config": {
"catalog": "SampleCatalog",
"environmentDefinition": "Todo",
"environmentType": "Dev",
"name": "sample-devcenter",
"Project": "SampleProject"
}
}
}