教學課程:為Arc啟用的 AKS 建立 Azure Container Registry
適用於:Azure Stack HCI 22H2 上的 AKS、Windows Server 上的 AKS
Azure Container Registry 是容器映射的私人登錄。 私人容器登錄可讓您安全地建置和部署應用程式和自定義程序代碼。
在本教學課程中,您會部署 Azure Container Registry 實例的第二部分,並將容器映射推送至該實例以用於 AKS。 您將學習如何:
- 建立 Azure Container Registry 執行個體
- 標記 Azure Container Registry 的容器映射
- 將映像上傳至 Azure Container Registry
- 檢視登錄中的映像
在稍後的教學課程中,此 Azure Container Registry 實例會與 Kubernetes 叢集整合,並從映射部署應用程式。
開始之前
上 一個教學課程 說明如何為簡單的 Azure Voting 應用程式建立容器映像。 如果您尚未建立 Azure 投票應用程式映像,請返回 教學課程 1 – 建立容器映像。
本教學課程會要求您執行 Azure CLI 2.0.53 版或更新版本。 執行 az --version
以尋找版本。 如果您需要安裝或升級,請參閱安裝 Azure CLI。
建立 Azure Container Registry
若要建立 Azure Container Registry 實例,您必須先有 資源群組。 Azure 資源群組是在其中部署與管理 Azure 資源的邏輯容器。
使用 az group create 命令來建立資源群組。 在下列範例中,會在 eastus 區域中建立名為 myResourceGroup 的資源群組:
az group create --name myResourceGroup --location eastus
使用 az acr create 命令建立 Azure Container Registry 實例,並提供您自己的登錄名稱。 登錄名稱在 Azure 內必須是唯一的,且包含 5-50 個英數字元。 在本教學課程的其餘部分, <acrName>
會作為容器登錄名稱的佔位元。 提供您自己的唯一登入名稱。 基本 SKU 對開發用途而言是最符合成本效益的進入點,可在儲存體和輸送量之間取得平衡。
az acr create --resource-group myResourceGroup --name <acrName> --sku Basic
登入容器登錄
若要使用 ACR 實例,您必須先登入。 使用 az acr login 命令,並提供上一個步驟中提供給容器登錄的唯一名稱:
az acr login --name <acrName>
此命令會在完成時傳 回登入成功 訊息。
標記容器映像
若要查看目前本機映射的清單,請使用 docker images 命令:
docker images
這個指令的輸出會顯示您目前本機映像的清單:
REPOSITORY TAG IMAGE ID CREATED SIZE
mcr.microsoft.com/azuredocs/azure-vote-front v1 84b41c268ad9 7 minutes ago 944MB
mcr.microsoft.com/oss/bitnami/redis 6.0.8 3a54a920bb6c 2 days ago 103MB
tiangolo/uwsgi-nginx-flask python3.6 a16ce562e863 6 weeks ago 944MB
若要搭配 Azure Container Registry 使用 azure-vote-front 容器映射,請務必使用登錄的登入伺服器地址標記映像。 此標籤用於將容器映像推送至映像登錄時的路由傳送。
若要取得登入伺服器位址,請使用 az acr list 命令並查詢 loginServer ,如下所示:
az acr list --resource-group myResourceGroup --query "[].{acrLoginServer:loginServer}" --output table
現在,使用容器登錄的 acrLoginServer 位址標記您的本機 azure-vote-front 映射。 若要指出映像版本,請將 :v1 新增至映像名稱的結尾:
docker tag mcr.microsoft.com/azuredocs/azure-vote-front:v1 <acrLoginServer>/azure-vote-front:v1
若要確認已套用標籤,請再次執行 Docker 映射 :
docker images
映射會以 Azure Container Registry 實例位址和版本號碼標記:
REPOSITORY TAG IMAGE ID CREATED SIZE
mcr.microsoft.com/azuredocs/azure-vote-front v1 84b41c268ad9 16 minutes ago 944MB
mycontainerregistry.azurecr.io/azure-vote-front v1 84b41c268ad9 16 minutes ago 944MB
mcr.microsoft.com/oss/bitnami/redis 6.0.8 3a54a920bb6c 2 days ago 103MB
tiangolo/uwsgi-nginx-flask python3.6 a16ce562e863 6 weeks ago 944MB
將映像推送到登錄
建置並標記映射后,將 azure-vote-front 映射推送至您的 Azure Container Registry 實例。 使用 docker push 並針對映像名稱提供您自己的 acrLoginServer
位址,如下所示:
docker push <acrLoginServer>/azure-vote-front:v1
可能需要幾分鐘的時間才能完成將映像推送至 Azure Container Registry。
列出登錄中的映像
若要傳回推送至 Azure Container Registry 實例的映射清單,請使用 az acr repository list 命令。 提供您自己的 <acrName>
,如下所示:
az acr repository list --name <acrName> --output table
下列範例輸出會列出 azure-vote-front 映射,如登錄中所示:
Result
----------------
azure-vote-front
若要查看特定映射的標籤,請使用 az acr repository show-tags 命令:
az acr repository show-tags --name <acrName> --repository azure-vote-front --output table
下列範例輸出顯示 上一個步驟中標記的 v1 映射:
Result
--------
v1
您現在有儲存在私人 Azure Container Registry 實例中的容器映像。 此映像會從 Azure Container Registry 部署至下一個教學課程中的 Kubernetes 叢集。
下一步
在本教學課程中,您已建立 Azure Container Registry,並推送映射以用於 Kubernetes 叢集。 您已了解如何︰
- 建立 Azure Container Registry (ACR) 實例
- 標記 ACR 的容器映像
- 將映像上傳至 ACR
- 檢視登錄中的映像
前進到下一個教學課程,瞭解如何在 Azure 中部署 Kubernetes 叢集。