快速入門:使用 ARM 範本建立異地複寫的容器登錄
本快速入門示範如何使用 Azure Resource Manager 範本 (ARM 範本) 建立 Azure 容器登錄執行個體。 此範本會設定異地複寫登錄,自動同步處理多個 Azure 區域的登錄內容。 異地複寫可讓您從區域部署對映像進行網路封閉存取,同時提供單一的管理體驗。 這是進階登錄服務層級的一項功能。
Azure Resource Manager 範本是一個 JavaScript 物件標記法 (JSON) 檔案,會定義專案的基礎結構和設定。 範本使用宣告式語法。 您可以描述預期的部署,而不需要撰寫程式設計命令順序來建立部署。
具有複寫的登錄不支援 ARM/Bicep 範本完成模式部署。
如果您的環境符合必要條件,而且您很熟悉 ARM 範本,請選取 [部署至 Azure] 按鈕。 範本會在 Azure 入口網站中開啟。
必要條件
如果您沒有 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 容器登錄
- Microsoft.ContainerRegistry/registries/replications:建立容器登錄複本
如需更多 Azure 容器登錄範本範例,請參閱快速入門範本資源庫。
部署範本
選取以下影像來登入 Azure 並開啟範本。
選取或輸入下列值。
訂用帳戶:選取 Azure 訂用帳戶。
資源群組:選取 [新建],輸入資源群組的唯一名稱,然後選取 [確認]。
區域:選取資源群組的位置。 範例:美國中部。
Acr 名稱:接受為登錄所產生的名稱,或輸入名稱。 此名稱必須是全域唯一的。
已啟用 Acr 管理使用者:接受預設值。
位置:接受為登錄首頁複本所產生的位置,或輸入位置,例如美國中部。
Acr Sku:接受預設值。
Acr 複本位置:使用區域的簡短名稱輸入登錄複本的位置。 必須和首頁的登錄位置不同。 範例:westeurope。
選取 [檢閱 + 建立],然後檢閱條款及條件。 如果您同意,請選取 [建立]。
成功建立登錄之後,您會收到一則通知:
Azure 入口網站用於部署範本。 除了 Azure 入口網站,您可以使用 Azure PowerShell、Azure CLI 和 REST API。 若要了解其他部署方法,請參閱部署範本。
檢閱已部署的資源
使用 Azure 入口網站或 Azure CLI 之類的工具來檢閱容器登錄的屬性。
在入口網站中,搜尋容器登錄,然後選取您建立的容器登錄。
記下 [概觀] 頁面中,登錄的登入伺服器。 當您使用 Docker 標記映像並將其推送至您的登錄時,請使用此 URI。 如需相關資訊,請參閱使用 Docker CLI 推送您的第一個映像。
在 [複寫] 頁面上,確認主要複本和透過範本所新增複本的位置。 如有需要,請在此頁面中新增更多複本。
清除資源
您可以刪除不再需要的資源群組、登錄和登錄複本。 若要這樣做,請移至 Azure 入口網站,選取包含登錄的資源群組,然後選取 [刪除資源群組]。
下一步
在本快速入門中,您已使用 ARM 範本建立了 Azure 容器登錄,並在另一個位置設定了登錄複本。 請繼續進行 Azure 容器登錄教學課程,以深入了解 ACR。
如需逐步教學課程,以引導您完成建立範本的流程,請參閱: