이 빠른 시작에서는 ARM 템플릿(Azure Resource Manager 템플릿)을 사용하여 Azure Container Registry 인스턴스를 만드는 방법을 보여 줍니다. 템플릿은 둘 이상의 Azure 지역에서 레지스트리 콘텐츠를 자동으로 동기화하는 지역 복제 레지스트리를 설정합니다. 지역 복제를 사용하면 이미지에 대한 네트워크와 가까운 액세스를 제공하며, 단일 관리 환경을 유지할 수 있습니다. 프리미엄 레지스트리 서비스 계층의 기능입니다.
Azure Resource Manager 템플릿은 프로젝트의 인프라 및 구성을 정의하는 JSON(JavaScript Object Notation) 파일입니다. 템플릿은 선언적 구문을 사용합니다. 배포를 만들기 위한 프로그래밍 명령의 시퀀스를 작성하지 않고 의도하는 배포를 설명합니다.
복제가 있는 레지스트리는 ARM/Bicep 템플릿 완료 모드 배포를 지원하지 않습니다.
환경이 필수 조건을 충족하고 ARM 템플릿을 사용하는 데 익숙한 경우 Azure에 배포 단추를 선택합니다. 템플릿이 Azure Portal에서 열립니다.
Prerequisites
Azure 구독이 아직 없는 경우 시작하기 전에 체험 계정을 만듭니다.
템플릿 검토
이 빠른 시작에서 사용되는 템플릿은 Azure 빠른 시작 템플릿에서 나온 것입니다. 템플릿은 레지스트리 및 추가 지역 복제본을 설정합니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"metadata": {
"_generator": {
"name": "bicep",
"version": "0.5.6.12127",
"templateHash": "12610175857982700190"
}
},
"parameters": {
"acrName": {
"type": "string",
"defaultValue": "[format('acr{0}', uniqueString(resourceGroup().id))]",
"maxLength": 50,
"minLength": 5,
"metadata": {
"description": "Globally unique name of your Azure Container Registry"
}
},
"acrAdminUserEnabled": {
"type": "bool",
"defaultValue": false,
"metadata": {
"description": "Enable admin user that has push / pull permission to the registry."
}
},
"___location": {
"type": "string",
"defaultValue": "[resourceGroup().___location]",
"metadata": {
"description": "Location for registry home replica."
}
},
"acrSku": {
"type": "string",
"defaultValue": "Premium",
"allowedValues": [
"Premium"
],
"metadata": {
"description": "Tier of your Azure Container Registry. Geo-replication requires Premium SKU."
}
},
"acrReplicaLocation": {
"type": "string",
"metadata": {
"description": "Short name for registry replica ___location."
}
}
},
"resources": [
{
"type": "Microsoft.ContainerRegistry/registries",
"apiVersion": "2019-12-01-preview",
"name": "[parameters('acrName')]",
"___location": "[parameters('___location')]",
"sku": {
"name": "[parameters('acrSku')]"
},
"tags": {
"displayName": "Container Registry",
"container.registry": "[parameters('acrName')]"
},
"properties": {
"adminUserEnabled": "[parameters('acrAdminUserEnabled')]"
}
},
{
"type": "Microsoft.ContainerRegistry/registries/replications",
"apiVersion": "2019-12-01-preview",
"name": "[format('{0}/{1}', parameters('acrName'), parameters('acrReplicaLocation'))]",
"___location": "[parameters('acrReplicaLocation')]",
"properties": {},
"dependsOn": [
"[resourceId('Microsoft.ContainerRegistry/registries', parameters('acrName'))]"
]
}
],
"outputs": {
"acrLoginServer": {
"type": "string",
"value": "[reference(resourceId('Microsoft.ContainerRegistry/registries', parameters('acrName'))).loginServer]"
}
}
}
다음 리소스는 템플릿에 정의되어 있습니다.
- Microsoft.ContainerRegistry/registries: Azure Container Registry 만들기
- Microsoft.ContainerRegistry/registries/replications: 컨테이너 레지스트리 복제본 만들기
빠른 시작 템플릿 갤러리에서 더 많은 Azure Container Registry 템플릿 샘플을 찾을 수 있습니다.
템플릿 배포
다음 이미지를 선택하고 Azure에 로그인하여 템플릿을 엽니다.
다음 값을 선택하거나 입력합니다.
구독: Azure 구독을 선택합니다.
리소스 그룹: 새로 만들기를 선택하고 리소스 그룹에 고유한 이름을 입력한 다음, 확인을 선택합니다.
지역: 리소스 그룹에 대한 위치를 선택합니다. 예: 미국 중부.
Acr 이름: 레지스트리에 대해 생성된 이름을 그대로 사용하거나 이름을 입력합니다. 전역적으로 고유해야 합니다.
Acr Admin User Enabled: 기본값을 적용합니다.
위치: 레지스트리의 홈 복제본에 대해 생성된 위치를 수락하거나 미국 중부와 같은 위치를 입력합니다.
Acr Sku: 기본값을 적용합니다.
Acr 복제본 위치: 지역의 짧은 이름을 사용하여 레지스트리 복제본의 위치를 입력합니다. 홈 레지스트리 위치와 달라야 합니다. 예: westeurope.
검토 + 만들기를 선택한 다음, 사용 약관을 검토합니다. 동의하면 만들기를 선택합니다.
레지스트리가 성공적으로 만들어지면 다음과 같은 알림이 표시됩니다.
Azure Portal은 템플릿을 배포하는데 사용됩니다. Azure Portal 외에도 Azure PowerShell, Azure CLI 및 REST API를 사용할 수 있습니다. 다른 배포 방법을 알아보려면 템플릿 배포를 참조하세요.
배포된 리소스 검토
Azure Portal 또는 Azure CLI와 같은 도구를 사용하여 컨테이너 레지스트리의 속성을 검토합니다.
포털에서 Container Registries를 검색하고 만든 컨테이너 레지스트리를 선택합니다.
개요 페이지에서 레지스트리의 로그인 서버를 확인합니다. Docker를 사용하여 이미지에 태그를 지정하고 레지스트리에 푸시할 때 이 URI를 사용합니다. 자세한 내용은 Docker CLI를 사용하여 첫 번째 이미지 푸시를 참조하세요.
복제 페이지에서 홈 복제본의 위치와 템플릿을 통해 추가된 복제본을 확인 합니다 . 원하는 경우 이 페이지에 복제본을 더 추가합니다.
자원을 정리하세요
더 이상 필요하지 않은 경우 리소스 그룹, 레지스트리 및 레지스트리 복제본을 삭제합니다. 이렇게 하려면 Azure Portal로 이동하여 레지스트리가 포함된 리소스 그룹을 선택한 다음 , 리소스 그룹 삭제를 선택합니다.
다음 단계
이 빠른 시작에서는 ARM 템플릿을 사용하여 Azure Container Registry를 만들고 다른 위치에 레지스트리 복제본을 구성했습니다. ACR에 대한 자세한 내용은 Azure Container Registry 자습서를 계속 진행하세요.
템플릿을 만드는 과정을 안내하는 단계별 자습서는 다음을 참조하세요.