共用方式為


使用第三方容器登錄

Azure 開發人員 CLI (azd) 支援用於部署的外部第三方容器登錄。 若要使用這項功能,您必須在呼叫 azd 部署之前,先手動向外部容器登錄進行驗證。

驗證

執行 docker login 並驗證外部容器登錄。 你可能需要依照你特定的註冊表提供者進行更多設定或配置步驟。

docker login <your-registry>

範例案例

您可以將 設定 azd 為從範本檔案中的 azure.yaml 外部容器登錄推送和提取映像。 支援更多容器登錄檔,為您的部署工作流程提供更大的彈性。

從外部容器登錄提取

在此範例中,在部署期間 azd ,容器會從容器應用程式服務提取 docker.io/username/nginx:latest 並直接參考。

name: todo-nodejs-mongo-aca
metadata:
  template: todo-nodejs-mongo-aca@0.0.1-beta
services:
  nginx:
    image: docker.io/<username>/nginx:latest
    host: containerapp

注意

從私人容器登錄提取容器時,您的 containerapp infra configuration 必須設定認證。

提取、標記和推送至外部登錄

azure.yaml請考慮具有下列組態的檔案:

# azure.yaml

name: todo-nodejs-mongo-aca
metadata:
  template: todo-nodejs-mongo-aca@0.0.1-beta
services:
  nginx:
    image: nginx
    host: containerapp
    docker:
      registry: docker.io/<username>
      image: nginx
      tag: latest   

azd deploy 指令會拉取已配置的 nginx 映像檔。 在這種情況下,它是 docker hub 上的公開映像檔,所以 azd 會重新標籤容器/映像檔並推送到 docker 登錄檔。

在 azd deploy 上建置、標記和推送至外部登錄

azure.yaml請考慮具有下列組態的檔案:

# azure.yaml

name: todo-nodejs-mongo-aca
metadata:
  template: todo-nodejs-mongo-aca@0.0.1-beta
services:
  api:
    project: ./src/api
    host: containerapp
    docker:
      registry: docker.io/<username>
      image: todo-api

這個 azd deploy 指令會建立容器、標記它,然後推送到 docker 登錄檔。