Visual Studio Code를 사용하여 Bicep 파일 만들기
이 문서에서는 Visual Studio Code를 사용하여 Bicep 파일을 만드는 방법을 보여줍니다.
Visual Studio Code 설치
Bicep 개발 환경을 설정하려면 Bicep 도구 설치를 참조하세요. 이러한 단계를 완료하면 Visual Studio Code 및 Bicep 확장이 설치됩니다. 최신 Azure CLI 또는 최신 Azure PowerShell 모듈을 사용할 수도 있습니다.
Bicep 명령
Visual Studio Code는 여러 Bicep 명령이 함께 제공됩니다.
Visual Studio Code에서 Bicep 파일을 열거나 만들고 보기 메뉴를 선택한 다음 명령 팔레트를 선택합니다. F1 또는 Ctrl+Shift+P 키 조합을 눌러 명령 팔레트를 표시할 수도 있습니다. Bicep을 입력하여 Bicep 명령을 나열합니다.
이러한 명령은 다음과 같습니다.
- ARM(Azure Resource Manager) 템플릿 빌드
- 빌드 매개 변수 파일
- Bicep 구성 파일 만들기
- Bicep으로 디컴파일
- Bicep 파일 배포
- 매개 변수 파일 생성
- Azure Kubernetes 매니페스트 가져오기(실험적)
- 리소스 삽입
- Bicep 시각화 도우미 열기
- 측면에 Bicep 시각화 도우미 열기
- JSON을 Bicep으로 붙여넣기
- Bicep 모듈(Force) 복원
- 배포 창 표시
- 측면에 배포 창 표시
Bicep 파일을 마우스 오른쪽 단추로 클릭하면 바로 가기 메뉴에도 이러한 명령이 표시됩니다.
JSON 파일을 마우스 오른쪽 단추로 클릭할 때 다음을 수행합니다.
이 문서의 명령에 대한 자세한 내용은 Bicep CLI 명령을 참조 하세요.
ARM 템플릿 빌드 명령
이 build
명령은 Bicep 파일을 JSON ARM 템플릿으로 변환합니다. 새 템플릿은 동일한 파일 이름을 가진 동일한 폴더에 저장됩니다. 파일 이름이 같은 파일이 있으면 이전 파일을 덮어씁니다. 예제 및 자세한 내용은 빌드를 참조하세요.
매개 변수 파일 빌드 명령
또한 이 build-params
명령은 Bicep 매개 변수 파일을 JSON 매개 변수 파일로 변환합니다. 새 매개 변수 파일은 동일한 파일 이름을 가진 동일한 폴더에 저장됩니다. 파일 이름이 같은 파일이 있으면 이전 파일을 덮어씁니다. 예제는 빌드 매개 변수를 참조하세요.
Bicep 구성 파일 만들기 명령
bicepconfig.json 파일은 Bicep 개발 환경을 사용자 지정할 수 있는 Bicep 구성 파일입니다. 여러 디렉터리에 bicepconfig.json 추가할 수 있습니다. 디렉터리 계층 구조의 Bicep 파일에 가장 가까운 구성 파일이 사용됩니다. Visual Studio Code에서 Bicep 구성 파일 만들기를 선택하면 확장에서 폴더를 선택할 수 있는 대화 상자가 열립니다. 기본 폴더는 Bicep 파일을 저장하는 위치입니다. 폴더에 bicepconfig.json 파일이 이미 있는 경우 기존 파일을 덮어쓸 수 있습니다.
Bicep 구성 파일을 만들려면 다음을 수행합니다.
- Visual Studio Code를 엽니다.
- 보기 메뉴에서 명령 팔레트를 선택하거나 Ctrl/Cmd+Shift+P를 누른 다음 Bicep: Bicep 구성 파일 만들기를 선택합니다.
- 파일을 배치할 파일 디렉터리를 선택합니다.
- 완료되면 구성 파일을 저장합니다.
Bicep 명령으로 디컴파일
이 decompile
명령은 JSON ARM 템플릿을 Bicep 파일로 디컴파일하고 원래 JSON ARM 템플릿과 동일한 디렉터리에 배치합니다. 새 파일의 확장명은 같은 파일 이름입니다 .bicep
. 동일한 파일 이름을 가진 Bicep 파일이 동일한 폴더에 이미 존재하는 경우 기존 파일을 덮어쓰거나 복사본을 만들라는 메시지가 Visual Studio Code에 표시됩니다. 예제는 디컴파일을 참조하세요.
Bicep 파일 배포 명령
Visual Studio Code에서 직접 Bicep 파일을 배포할 수 있습니다. 명령 팔레트 또는 상황에 맞는 메뉴에서 Bicep 파일 배포를 선택합니다. 확장은 Azure Portal에 로그인하고, 구독을 선택하고, 리소스 그룹을 만들거나 선택하고, 매개 변수 값을 입력하라는 메시지를 표시합니다.
참고 항목
Visual Studio Code의 Bicep 배포 명령은 인증을 관리하기 위해 새로운 기본 제공 인증 API 를 사용합니다. bicepconfig.json의 클라우드 프로필은 사용하지 않습니다. 사용자 지정 클라우드에 로그인하려면 설정>확장>Microsoft 계정>Microsoft 소버린 클라우드 관리를>선택합니다. 현재는 여러 로그인 계정이 지원되지 않습니다.
매개 변수 파일 생성 명령
이 generate-params
명령은 Bicep 파일과 동일한 폴더에 매개 변수 파일을 만듭니다. Bicep 매개 변수 파일 또는 JSON 매개 변수 파일을 만들도록 선택할 수 있습니다. 새 Bicep 매개 변수 파일 이름은 <bicep-file-name>.bicepparam
새 JSON 매개 변수 파일 이름입니다 <bicep-file-name>.parameters.json
. 예제 및 자세한 내용은 generate-params를 참조하세요.
AKS 매니페스트 가져오기(미리 보기) 명령
이 명령은 AKS 매니페스트 파일을 가져오고 Bicep 모듈을 만듭니다. 자세한 내용은 Bicep Kubernetes 확장(미리 보기) 및 빠른 시작을 참조하세요. Bicep Kubernetes 확장(미리 보기)을 사용하여 AKS(Azure Kubernetes Service) 클러스터 배포
리소스 삽입 명령
이 명령은 기존 리소스의 리소스 ID를 제공하여 Bicep 파일에서 리소스를 선언합니다. Visual Studio Code에서 리소스 삽입을 선택하고 명령 팔레트에 리소스 ID를 입력합니다. 리소스를 만드는 데 몇 분 정도 걸립니다.
다음 방법 중 하나를 사용하여 리소스 ID를 찾을 수 있습니다.
Visual Studio Code용 Azure Resources 확장을 사용합니다.
Azure Portal을 확인합니다.
Azure CLI 또는 Azure PowerShell을 사용합니다.
az resource list
템플릿을 내보내는 프로세스와 마찬가지로 이 프로세스는 사용 가능한 리소스를 만들려고 합니다. 그러나 삽입된 리소스의 대부분은 Azure 리소스를 배포하는 데 사용되기 전에 어떤 방식으로든 변경해야 합니다. 자세한 내용은 ARM 템플릿 JSON을 Bicep으로 디컴파일(Decompile ARM) 템플릿을 참조하세요.
Bicep 시각화 도우미 열기 명령
Bicep 시각화 도우미는 Bicep 파일에 정의된 리소스와 해당 리소스 간의 종속성을 보여 줍니다. 다음 다이어그램은 Linux Virtual Machine에 대한 Bicep 파일의 시각적 표현입니다.
Bicep 시각화 도우미를 Bicep 파일과 나란히 열 수 있습니다.
JSON을 Bicep 명령으로 붙여넣기
ARM 템플릿에서 Bicep 파일에 JSON 코드 조각을 붙여넣을 수 있습니다. Visual Studio Code는 JSON을 Bicep으로 자동으로 디컴파일합니다. 이 기능은 Bicep 확장 버전 0.14.0 이상에서만 사용할 수 있으며 기본적으로 사용하도록 설정됩니다. 이 기능을 사용하지 않도록 설정하려면 Visual Studio Code 및 Bicep 확장을 참조하세요.
이 기능을 사용하면 다음을 붙여 넣을 수 있습니다.
- 전체 JSON ARM 템플릿.
- 단일 또는 여러 리소스.
- 개체, 배열 또는 문자열과 같은 JSON 값입니다. 큰따옴표가 있는 문자열은 작은따옴표가 있는 문자열로 변환됩니다.
예를 들어 다음 Bicep 파일로 시작할 수 있습니다.
@description('Storage Account type')
@allowed([
'Standard_LRS'
'Standard_GRS'
'Standard_ZRS'
'Premium_LRS'
])
param storageAccountsku string = 'Standard_LRS'
@description('Location for all resources.')
param location string = resourceGroup().location
var storageAccountName = '${uniqueString(resourceGroup().id)}storage'
resource storageAccount 'Microsoft.Storage/storageAccounts@2023-04-01' = {
name: storageAccountName
location: location
sku: {
name: storageAccountsku
}
kind: 'StorageV2'
tags: {
ObjectName: storageAccountName
}
properties: {}
}
output storageAccountName string = storageAccountName
다음 JSON을 붙여넣습니다.
{
"type": "Microsoft.Batch/batchAccounts",
"apiVersion": "2024-02-01",
"name": "[parameters('batchAccountName')]",
"location": "[parameters('location')]",
"tags": {
"ObjectName": "[parameters('batchAccountName')]"
},
"properties": {
"autoStorage": {
"storageAccountId": "[resourceId('Microsoft.Storage/storageAccounts', variables('storageAccountName'))]"
}
}
}
Visual Studio Code는 JSON을 Bicep으로 자동으로 변환합니다. 매개 변수도 추가 batchAccountName
해야 합니다.
Ctrl+Z를 눌러 디컴퓨션을 실행 취소할 수 있습니다. 원래 JSON이 파일에 나타납니다.
Bicep 모듈 복원 명령
Bicep 파일이 레지스트리에 게시된 모듈을 사용하는 경우 restore
명령은 레지스트리에서 필요한 모든 모듈의 복사본을 가져옵니다. 해당 복사본을 로컬 캐시에 저장합니다. 자세한 내용 및 예제는 복원을 참조하세요.
배포 창 표시 명령
배포 창은 Visual Studio Code의 실험적 기능입니다. 자세한 내용은 배포 창 사용(실험적!)을 참조하세요.
배포 창을 Bicep 파일과 나란히 열 수 있습니다.
빠른 수정 제안 사용
VS Code의 전구는 빠른 수정 제안을 나타냅니다. 편집기에서 코드에서 문제 또는 개선 기회를 검색할 때 나타납니다. 전구를 클릭하면 문제를 해결하거나 코드를 향상시킬 수 있는 작업 메뉴가 표시됩니다.
추출 명령은 매개 변수, 변수 및 형식 추출을 참조 하세요. 추가 작업에서는 데코레이터를 추가하는 것이 좋습니다.
매개 변수, 변수 및 형식 추출
변수, 매개 변수 및 사용자 정의 데이터 형식을 추출하려면 이러한 구성 요소를 기존 코드에서 격리하고 정의하여 코드 구조, 유지 관리 효율성 및 명확성을 향상시킵니다.
다음 스크린샷은 AKS 클러스터 리소스의 정의를 보여 줍니다. 매개 변수 또는 변수 또는 속성 기반의 사용자 정의 데이터 형식(예: identity
.)을 추출할 수 있습니다. identity
코드에서 줄을 선택한 다음 노란색 전구 아이콘을 선택합니다. 컨텍스트 창에는 사용 가능한 추출 옵션이 표시됩니다.
변수 추출: 새 변수와 변수 이름을 업데이트하는 옵션을 만듭니다.
단순 데이터 형식의 매개 변수 추출: 문자열, int 등과 같은 간단한 데이터 형식과 매개 변수 이름을 업데이트하는 옵션을 사용하여 새 매개 변수를 만듭니다.
사용자 정의 데이터 형식의 매개 변수 추출: 사용자 정의 데이터 형식과 매개 변수 이름을 업데이트하는 옵션을 사용하여 새 매개 변수를 만듭니다.
이렇게 하려면 추출 후 일부 사용자 지정이 필요합니다.
사용자 정의 형식 만들기: 새 사용자 정의 형식과 형식 이름을 업데이트하는 옵션을 만듭니다.
다른 옵션과 달리 선택한 코드를 새 형식에 대한 참조로 대체하지는 않습니다. 앞의 예제에서 값
identity
은 그대로 유지됩니다. 새 형식을 사용하려면 코드에 통합해야 합니다.
설명서 보기 옵션
Visual Studio Code에서 작업 중인 리소스 종류에 대한 템플릿 참조를 열 수 있습니다. 이렇게 하려면 리소스의 기호화된 이름 위에 커서를 놓고 설명서 보기를 선택합니다.
파일로 이동
로컬 파일, 모듈 레지스트리 파일 또는 템플릿 사양과 같이 참조되는 파일 형식에 관계없이 모듈을 정의할 때 모듈 경로를 선택하거나 강조 표시하고 [F12]를 눌러 파일을 열 수 있습니다. 참조된 파일이 AVM인 Azure 확인된 모듈인 경우 컴파일된 JSON 또는 Bicep 파일 간에 전환할 수 있습니다. 프라이빗 레지스트리 모듈의 Bicep 파일을 열려면 스위치를 사용하도록 설정된 상태에서 모듈이 레지스트리에 WithSource
게시되었는지 확인합니다. 자세한 내용은 레지스트리에 파일 게시를 참조하세요. 프라이빗 모듈 레지스트리에서 Bicep 파일을 여려면 Visual Studio Code Bicep 확장 버전 0.27.1 이상이 필요합니다.
문제 해결
창에는 Problems
Bicep 파일의 오류 및 경고가 요약되어 있습니다.
Bicep 코어 진단은 오류 및 경고 코드 목록을 제공합니다.
다음 단계
빠른 시작: 이 문서의 정보를 적용하는 방법에 대한 자습서를 위해 Visual Studio Code 를 사용하여 Bicep 파일을 만듭니다.