Bicep CLI 명령

이 문서에서는 Bicep CLI에서 사용할 수 있는 명령에 대해 설명합니다. 이러한 명령을 실행하려면 Bicep CLI가 설치되어 있어야 합니다.

Azure CLI를 사용하거나 직접 Bicep을 호출하여 Bicep CLI 명령을 실행할 수 있습니다. 이 문서에서는 Azure CLI에서 명령을 실행하는 방법을 보여 줍니다. Azure CLI를 통해 실행하는 경우 az를 사용하여 명령을 시작합니다. Azure CLI 사용하지 않는 경우 명령을 시작할 때 az를 사용하지 않고 명령을 실행합니다. 예를 들어 az bicep buildbicep 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.1008 이상을 사용해야 합니다.

디컴파일

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

az bicep decompile --file main.json

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

설치

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

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

az bicep install

특정 버전을 설치하려면

az bicep install --version v0.3.255

list-versions

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

az bicep list-versions

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

[
  "v0.4.1",
  "v0.3.539",
  "v0.3.255",
  "v0.3.126",
  "v0.3.1",
  "v0.2.328",
  "v0.2.317",
  "v0.2.212",
  "v0.2.59",
  "v0.2.14",
  "v0.2.3",
  "v0.1.226-alpha",
  "v0.1.223-alpha",
  "v0.1.37-alpha",
  "v0.1.1-alpha"
]

게시

publish 명령은 레지스트리에 모듈을 추가합니다. Azure 컨테이너 레지스트리가 있어야 하고 레지스트리에 게시하는 계정에 올바른 권한이 있어야 합니다. 모듈 레지스트리 설정에 관한 자세한 내용은 Bicep 모듈에 프라이빗 레지스트리 사용을 참조하세요.

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

publish 명령을 사용하려면 Bicep CLI 버전 0.4.1008 이상을 사용해야 합니다.

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

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

예:

az bicep publish --file storage.bicep --target br:exampleregistry.azurecr.io/bicep/modules/storage:v1

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

경고

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

복원

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

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

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

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

bicep restore <bicep-file>

제공하는 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
    

업그레이드

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

az bicep upgrade

버전

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

az bicep version

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

Bicep CLI version 0.4.1008 (223b8d227a)

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

bicep --version

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

다음 단계

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