快速入門:使用 Azure CLI 建立已連線登錄 (即將淘汰)
在本快速入門中,您會使用 Azure CLI 在 Azure 中建立已連線登錄資源。 Azure Container Registry 的已連線登錄功能可讓您從遠端或在內部部署環境部署登錄,並使用雲端登錄同步處理映像和其他成品。
您會在這裡為雲端登錄建立兩個已連線的登錄資源:一個已連線的登錄允許讀取和寫入 (成品提取和推送) 功能,另一個允許唯讀功能。
建立已連線的登錄之後,您可以遵循其他指南,在內部部署或遠端基礎結構上部署及使用。
必要條件
在 Azure Cloud Shell 中使用 Bash 環境。 如需詳細資訊,請參閱 Azure Cloud Shell 中的 Bash 快速入門。
若要在本地執行 CLI 參考命令,請安裝 Azure CLI。 若您在 Windows 或 macOS 上執行,請考慮在 Docker 容器中執行 Azure CLI。 如需詳細資訊,請參閱〈如何在 Docker 容器中執行 Azure CLI〉。
如果您使用的是本機安裝,請使用 az login 命令,透過 Azure CLI 來登入。 請遵循您終端機上顯示的步驟,完成驗證程序。 如需其他登入選項,請參閱使用 Azure CLI 登入。
出現提示時,請在第一次使用時安裝 Azure CLI 延伸模組。 如需擴充功能詳細資訊,請參閱使用 Azure CLI 擴充功能。
執行 az version 以尋找已安裝的版本和相依程式庫。 若要升級至最新版本,請執行 az upgrade。
啟用雲端登錄的專用資料端點
使用 az acr update 命令,在雲端中啟用 Azure 容器登錄的專用資料端點。 已連線的登錄需要此步驟,才能與雲端登錄通訊。
# Set the REGISTRY_NAME environment variable to identify the existing cloud registry
REGISTRY_NAME=<container-registry-name>
az acr update --name $REGISTRY_NAME \
--data-endpoint-enabled
將映像匯入至雲端登錄
使用 az acr import 命令,將下列容器映像匯入至您的雲端登錄。 如果您已匯入這些映像,請略過此步驟。
連線的登錄映像
若要支援巢狀 IoT Edge 案例,連線登錄執行階段的容器映像必須可在您的私人 Azure 容器登錄中使用。 使用 az acr import 命令,將連線的登錄映像匯入您的私人登錄中。
# Use the REGISTRY_NAME variable in the following Azure CLI commands to identify the registry
REGISTRY_NAME=<container-registry-name>
az acr import \
--name $REGISTRY_NAME \
--source mcr.microsoft.com/acr/connected-registry:0.8.0
IoT Edge 和 API Proxy 映像
若要在巢狀 IoT Edge 上支援連線的登錄,您必須為 IoT Edge 和 API Proxy 部署模組。 將這些映像匯入您的私人登錄中。
IoT Edge API Proxy 模組可讓 IoT Edge 裝置使用 HTTPS 通訊協定在相同的連接埠 (例如 443) 上公開多個服務。
az acr import \
--name $REGISTRY_NAME \
--source mcr.microsoft.com/azureiotedge-agent:1.2.4
az acr import \
--name $REGISTRY_NAME \
--source mcr.microsoft.com/azureiotedge-hub:1.2.4
az acr import \
--name $REGISTRY_NAME \
--source mcr.microsoft.com/azureiotedge-api-proxy:1.1.2
az acr import \
--name $REGISTRY_NAME \
--source mcr.microsoft.com/azureiotedge-diagnostics:1.2.4
hello-world 映像
若要測試連線的登錄,請匯入 hello-world
映像。 此存放庫將會同步處理至連線的登錄,並由連線的登錄用戶端提取。
az acr import \
--name $REGISTRY_NAME \
--source mcr.microsoft.com/hello-world:1.1.2
建立已連線的登錄資源以獲得讀取和寫入功能
使用 az acr connected-registry create 命令建立已連線的登錄。 已連線的登錄名稱必須以字母開頭,並且只能包含英數字元。 在這個 Azure 容器登錄的階層中,名稱長度必須為 5 到 40 個字元且是唯一的。
# Set the CONNECTED_REGISTRY_RW environment variable to provide a name for the connected registry with read/write functionality
CONNECTED_REGISTRY_RW=<connnected-registry-name>
az acr connected-registry create --registry $REGISTRY_NAME \
--name $CONNECTED_REGISTRY_RW \
--repository "hello-world" "acr/connected-registry" "azureiotedge-agent" "azureiotedge-hub" "azureiotedge-api-proxy"
此命令會建立名稱值為 $CONNECTED_REGISTRY_RW 的已連線登錄資源,並且將其連結至名稱值為 $REGISTRY_NAME 的雲端登錄。 在稍後的快速入門指南中,您會了解部署已連線登錄的選項。
在部署指定存放庫之後,該存放庫會在雲端登錄與已連線登錄之間同步處理。
因為未針對已連線登錄指定
--mode
選項,所以會在預設 ReadWrite 模式中建立。由於未針對此已連線登錄定義任何同步排程,因此存放庫會在雲端登錄與已連線的登錄之間同步處理,而不會中斷。
重要
若要支援較低層沒有網際網路存取的巢狀案例,您必須一律允許同步處理
acr/connected-registry
存放庫。 此存放庫包含已連線登錄執行階段的映像。
建立已連線的登錄資源以獲得唯讀功能
您也可以使用 az acr connected-registry create 命令來建立具有唯讀功能的已連線登錄。
# Set the CONNECTED_REGISTRY_READ environment variable to provide a name for the connected registry with read-only functionality
CONNECTED_REGISTRY_RO=<connnected-registry-name>
az acr connected-registry create --registry $REGISTRY_NAME \
--parent $CONNECTED_REGISTRY_RW \
--name $CONNECTED_REGISTRY_RO \
--repository "hello-world" "acr/connected-registry" "azureiotedge-agent" "azureiotedge-hub" "azureiotedge-api-proxy" \
--mode ReadOnly
此命令會建立名稱值為 $CONNECTED_REGISTRY_RO 的已連線登錄資源,並且將其連結至名稱值為 $REGISTRY_NAME 的雲端登錄。
- 指定存放庫在部署之後,將會在名稱值為 $CONNECTED_REGISTRY_RW 的父代登錄與已連線登錄之間同步處理。
- 此資源會在 ReadOnly 模式中建立,可在部署之後啟用唯讀 (成品提取) 功能。
- 由於未針對此已連線登錄定義任何同步排程,因此存放庫會在父代登錄與已連線的登錄之間同步處理,而不會中斷。
確認資源已建立
您可以使用已連線的登錄 az acr connected-registry list 命令來確認已建立資源。
az acr connected-registry list \
--registry $REGISTRY_NAME \
--output table
您應該會看到如下的回應。 因為尚未部署已連線的登錄,所以「離線」的連線狀態表示其目前已與雲端中斷連線。
NAME MODE CONNECTION STATE PARENT LOGIN SERVER LAST SYNC (UTC)
------------------- -------- ------------------ ------------------- -------------- -----------------
myconnectedregrw ReadWrite Offline
myconnectedregro ReadOnly Offline myconnectedregrw
下一步
在本快速入門中,您會使用 Azure CLI 在 Azure 中建立兩個已連線登錄資源。 這些新的已連線登錄資源會繫結至您的雲端登錄,並允許與雲端登錄同步處理成品。
請繼續進行已連線的登錄部署指南,了解如何在 IoT Edge 基礎結構上部署和使用已連線的登錄。