將容器映像推送至 Azure Container Registry

已完成

在本單元中,您會將容器映像推送至Azure Container Registry。

Azure Container Registry 可讓您建置、儲存及管理所部署之各類型容器之私人登錄中的映像及成品。 將 Azure 容器登錄與您現有的容器開發與部署管線搭配使用。

注意

如果您的工作階段已閒置,或您正在另一個時間點和/或從另一個 CLI 執行此步驟,則您可能必須重新初始化環境變數,並使用下列 CLI 命令重新驗證。

AZ_RESOURCE_GROUP=javacontainerizationdemorg

AZ_CONTAINER_REGISTRY=<YOUR_CONTAINER_REGISTRY>

AZ_KUBERNETES_CLUSTER=javacontainerizationdemoaks

AZ_LOCATION=<YOUR_AZURE_REGION>

AZ_KUBERNETES_CLUSTER_DNS_PREFIX=<YOUR_UNIQUE_DNS_PREFIX_TO_ACCESS_YOUR_AKS_CLUSTER>

az login

az acr login -n $AZ_CONTAINER_REGISTRY

推送容器映像

您可以將新建置的容器映像推送至Azure Container Registry。 藉由這樣做,您的容器映像將透過網路接近您的所有 Azure 資源,例如您的 Azure Kubernetes 叢集。 您最終會將 AKS 設定為從 Azure Container Registry 提取 flightbookingsystemsample 映像。

若要將容器映像推送至 Azure Container Registry,請在 CLI 中執行下列三個命令:

(若還沒登入) 請登入 Azure Container Registry:

az acr login

首先,使用您的 Azure Container Registry,標記先前建置的容器映像:

docker tag flightbookingsystemsample $AZ_CONTAINER_REGISTRY.azurecr.io/flightbookingsystemsample

接著,將容器映像推送至 Azure Container Registry:

docker push $AZ_CONTAINER_REGISTRY.azurecr.io/flightbookingsystemsample

推送完成後,您可以檢視新推送映像的 Azure Container Registry 映像中繼資料。 在 CLI 中執行下列命令:

az acr repository show -n $AZ_CONTAINER_REGISTRY --image flightbookingsystemsample:latest

您會得到類似以下的輸出:

{
  "changeableAttributes": {
    "deleteEnabled": true,
    "listEnabled": true,
    "readEnabled": true,
    "writeEnabled": true
  },
  "createdTime": "2021-10-08T00:51:43.5522013Z",
  "digest": "sha256:bc7613a5612c914d7a6bfc0f130d1f632a5bda362aa62bb3ac12304dc4ce94c1",
  "lastUpdateTime": "2021-10-08T00:58:57.623821Z",
  "name": "latest",
  "signed": false
}

您的容器映像現在位於 Azure Container Registry 內,並準備好可供 Azure 服務進行部署,例如 Azure Kubernetes Service。