Bicep CLI 명령

이 문서에서는 Bicep CLI에서 사용할 수 있는 명령에 대해 설명합니다. 이러한 명령을 실행하는 방법에는 Azure CLI를 활용하거나 Bicep CLI 명령을 직접 호출하는 두 가지 옵션이 있습니다. 각 방법마다 고유한 설치 프로세스가 필요합니다. 자세한 내용은 Azure CLI 설치Azure PowerShell 설치를 참조하세요.

이 문서에서는 Azure CLI에서 명령을 실행하는 방법을 보여 줍니다. Azure CLI를 통해 실행하는 경우 az를 사용하여 명령을 시작합니다. Azure CLI 사용하지 않는 경우 명령을 시작할 때 az를 사용하지 않고 명령을 실행합니다. 예를 들어, az bicep buildbicep build가 되고 az bicep versionbicep --version이 됩니다.

build

build 명령은 Bicep 파일을 ARM 템플릿(Azure Resource Manager 템플릿)으로 변환합니다. 일반적으로 이 명령은 Bicep 파일을 배포할 때 자동으로 실행되므로 실행할 필요가 없습니다. Bicep 파일에서 만든 ARM 템플릿 JSON을 보려면 수동으로 실행합니다.

다음 예제에서는 main.bicep이라는 Bicep 파일을 main.json이라는 ARM 템플릿으로 변환합니다. 새 파일은 Bicep 파일이 있는 동일한 디렉터리에 만들어집니다.

az bicep build --file main.bicep

다음 예제는 main.json을 다른 디렉터리에 저장합니다.

az bicep build --file main.bicep --outdir c:\jsontemplates

다음 예제는 만들 파일의 이름과 위치를 지정합니다.

az bicep build --file main.bicep --outfile c:\jsontemplates\azuredeploy.json

stdout에 파일을 인쇄하려면 다음을 사용합니다.

az bicep build --file main.bicep --stdout

Bicep 파일에 외부 레지스트리를 참조하는 모듈이 포함된 경우 빌드 명령은 자동으로 restore를 호출합니다. restore 명령은 레지스트리에서 파일을 가져오고 로컬 캐시에 저장합니다.

참고 항목

복원 명령은 캐시를 새로 고치지 않습니다. 자세한 내용은 복원을 참조하세요.

restore를 자동으로 호출하지 않으려면 --no-restore 스위치를 사용합니다.

az bicep build --no-restore <bicep-file>

외부 모듈 중 하나가 캐시되어 있지 않으면 --no-restore 스위치를 사용한 빌드 프로세스가 실패합니다.

The module with reference "br:exampleregistry.azurecr.io/bicep/modules/storage:v1" has not been restored.

이 오류가 발생하면 --no-restore 스위치 없이 build 명령을 실행하거나, 먼저 bicep restore를 실행합니다.

--no-restore 스위치를 사용하려면 Bicep CLI 버전 0.4.X 이상을 사용해야 합니다.

빌드 매개 변수

build-params 명령은 .bicepparam 파일을 JSON 매개 변수 파일로 빌드합니다.

az bicep build-params --file params.bicepparam

이 명령은 params.bicepparam 매개 변수 파일을 params.json JSON 매개 변수 파일로 변환합니다.

디컴파일

decompile 명령은 ARM 템플릿 JSON을 Bicep 파일로 변환합니다.

az bicep decompile --file main.json

이 명령은 main.json과 동일한 디렉터리에 main.bicep이라는 파일을 만듭니다. main.bicep이 동일한 디렉터리에 있는 경우 --force 스위치를 사용하여 기존 Bicep 파일을 덮어씁니다.

이 명령 사용에 대한 자세한 내용은 ARM 템플릿 JSON을 Bicep으로 디컴파일을 참조하세요.

디컴파일 매개 변수

decompile-params 명령은 JSON 매개 변수 파일을 .bicepparam 매개 변수 파일로 디컴파일합니다.

az bicep decompile-params --file azuredeploy.parameters.json --bicep-file ./dir/main.bicep

이 명령은 azuredeploy.parameters.json 매개 변수 파일을 azuredeploy.parameters.bicepparam 파일로 디컴파일합니다. --bicep-fileusing 선언에서 참조되는 Bicep 파일(.bicepparam 파일 기준)에 대한 경로를 지정합니다.

format

format 명령은 Bicep 파일의 형식을 지정합니다. Visual Studio Code의 SHIFT+ALT+F 바로 가기와 동일한 기능을 제공합니다.

az bicep format --file main.bicep

generate-params

generate-params 명령은 지정된 Bicep 파일에서 매개 변수 파일을 빌드하고 기존 매개 변수 파일이 있는 경우 업데이트합니다.

az bicep generate-params --file main.bicep --output-format bicepparam --include-params all

이 명령은 main.bicepparam이라는 Bicep 매개 변수 파일을 만듭니다. 매개 변수 파일에는 기본값 구성 여부에 관계없이 Bicep 파일의 모든 매개 변수가 포함됩니다.

az bicep generate-params --file main.bicep --outfile main.parameters.json

이 명령은 main.parameters.json이라는 매개 변수 파일을 만듭니다. 매개 변수 파일에는 Bicep 파일에 구성된 기본값 없이 매개 변수만 포함됩니다.

설치

install 명령은 로컬 환경에 Bicep CLI를 추가합니다. 자세한 내용은 Bicep 도구 설치를 참조하세요. 이 명령은 Azure CLI를 통해서만 사용할 수 있습니다.

최신 버전을 설치하려면 다음을 사용하세요.

az bicep install

특정 버전을 설치하려면

az bicep install --version v0.3.255

린트

lint 명령은 Bicep 파일의 오류 및 linter 규칙 위반을 반환합니다.

az bicep lint --file main.bicep

Bicep 파일에 외부 레지스트리를 참조하는 모듈이 포함된 경우 lint 명령은 자동으로 restore를 호출합니다. restore 명령은 레지스트리에서 파일을 가져오고 로컬 캐시에 저장합니다.

참고 항목

복원 명령은 캐시를 새로 고치지 않습니다. 자세한 내용은 복원을 참조하세요.

restore를 자동으로 호출하지 않으려면 --no-restore 스위치를 사용합니다.

az bicep lint --no-restore <bicep-file>

외부 모듈 중 하나가 캐시되어 있지 않으면 --no-restore 스위치를 사용한 lint 프로세스가 실패합니다.

The module with reference "br:exampleregistry.azurecr.io/bicep/modules/storage:v1" has not been restored.

이 오류가 발생하면 --no-restore 스위치 없이 lint 명령을 실행하거나, 먼저 bicep restore를 실행합니다.

list-versions

list-versions 명령은 사용 가능한 모든 버전의 Bicep CLI를 반환합니다. 이 명령을 사용하여 새 버전을 업그레이드하거나 설치할 것인지 확인합니다. 이 명령은 Azure CLI를 통해서만 사용할 수 있습니다.

az bicep list-versions

이 명령은 사용 가능한 버전 배열을 반환합니다.

[
  "v0.20.4",
  "v0.19.5",
  "v0.18.4",
  "v0.17.1",
  "v0.16.2",
  "v0.16.1",
  "v0.15.31",
  "v0.14.85",
  "v0.14.46",
  "v0.14.6",
  "v0.13.1",
  "v0.12.40",
  "v0.12.1",
  "v0.11.1",
  "v0.10.61",
  "v0.10.13",
  "v0.9.1",
  "v0.8.9",
  "v0.8.2",
  "v0.7.4",
  "v0.6.18",
  "v0.6.11",
  "v0.6.1",
  "v0.5.6",
  "v0.4.1318",
  "v0.4.1272",
  "v0.4.1124",
  "v0.4.1008",
  "v0.4.613",
  "v0.4.451"
]

publish

publish 명령은 레지스트리에 모듈을 추가합니다. Azure 컨테이너 레지스트리가 있어야 하고 레지스트리에 게시하는 계정에 올바른 권한이 있어야 합니다. 모듈 레지스트리 설정에 관한 자세한 내용은 Bicep 모듈에 프라이빗 레지스트리 사용을 참조하세요. 모듈을 게시하려면 계정에 레지스트리에 액세스할 수 있는 올바른 프로필과 사용 권한이 있어야 합니다. Bicep 구성 파일에서 레지스트리 인증을 위한 프로필과 자격 증명 우선 순위를 구성할 수 있습니다.

레지스트리에 파일을 게시한 후 모듈에서 참조할 수 있습니다.

publish 명령을 사용하려면 Bicep CLI 버전 0.14.X 이상을 사용해야 합니다. --documentationUri/-d 매개 변수를 사용하려면 Bicep CLI 버전 0.14.X 이상이 있어야 합니다.

레지스트리에 모듈을 게시하려면 다음을 사용합니다.

az bicep publish --file <bicep-file> --target br:<registry-name>.azurecr.io/<module-path>:<tag> --documentationUri <documentation-uri>

예시:

az bicep publish --file storage.bicep --target br:exampleregistry.azurecr.io/bicep/modules/storage:v1 --documentationUri https://www.contoso.com/exampleregistry.html

publish 명령은 bicepconfig.json 파일에 지정한 별칭을 인식하지 못합니다. 전체 모듈 경로를 제공합니다.

Warning

동일한 대상에 게시하면 이전 모듈을 덮어씁니다. 업데이트할 때 버전을 증분하는 것이 좋습니다.

복원

Bicep 파일이 레지스트리에 게시된 모듈을 사용하는 경우 restore 명령은 레지스트리에서 필요한 모든 모듈의 복사본을 가져옵니다. 해당 복사본을 로컬 캐시에 저장합니다. Bicep 파일은 로컬 캐시에서 외부 파일을 사용할 수 있는 경우만 빌드할 수 있습니다. 일반적으로 빌드 프로세스에 의해 복원이 자동으로 트리거되므로 복원을 실행할 필요가 없습니다.

외부 모듈을 로컬 캐시로 복원하려면 계정에 레지스트리에 액세스할 수 있는 올바른 프로필과 사용 권한이 있어야 합니다. Bicep 구성 파일에서 레지스트리 인증을 위한 프로필과 자격 증명 우선 순위를 구성할 수 있습니다.

restore 명령을 사용하려면 Bicep CLI 버전 0.4.X 이상을 사용해야 합니다. 이 명령은 현재 Bicep CLI를 직접 호출하는 경우에만 사용할 수 있습니다. 현재 Azure CLI 명령을 통해서는 사용할 수 없습니다.

파일에 대한 외부 모듈을 수동으로 복원하려면 다음을 사용합니다.

az bicep restore --file <bicep-file> [--force]

제공하는 Bicep 파일은 배포할 파일입니다. 레지스트리에 연결되는 모듈이 포함되어야 합니다. 예를 들어, 다음 파일을 복원할 수 있습니다.

module stgModule 'br:exampleregistry.azurecr.io/bicep/modules/storage:v1' = {
  name: 'storageDeploy'
  params: {
    storagePrefix: 'examplestg1'
  }
}

로컬 캐시는 다음 위치에 있습니다.

  • Windows

    %USERPROFILE%\.bicep\br\<registry-name>.azurecr.io\<module-path\<tag>
    
  • Linux

    /home/<username>/.bicep
    
  • Mac에서

    ~/.bicep
    

restore 명령은 모듈이 이미 캐시된 경우 캐시를 새로 고치지 않습니다. 캐시를 새로 고치려면 캐시에서 모듈 경로를 삭제하거나 restore 명령과 함께 --force 스위치를 사용할 수 있습니다.

Upgrade(업그레이드)

upgrade 명령은 설치된 버전을 최신 버전으로 업데이트합니다. 이 명령은 Azure CLI를 통해서만 사용할 수 있습니다.

az bicep upgrade

version

version 명령은 설치된 버전을 반환합니다.

az bicep version

이 명령은 버전 번호를 표시합니다.

Bicep CLI version 0.22.6 (d62b94db31)

Bicep CLI를 통해 직접 이 명령을 호출하려면 다음을 사용합니다.

bicep --version

Bicep CLI가 설치되지 않은 경우 Bicep CLI를 찾을 수 없다는 오류 메시지가 표시됩니다.

다음 단계

Bicep 파일 배포에 대한 자세한 내용은 다음을 참조하세요.