Použití registrů kontejnerů třetích stran

Azure Developer CLI (azd) podporuje externí registry kontejnerů třetích stran pro nasazení. Pokud chcete tuto funkci použít, musíte se před voláním azd nasazení ručně ověřit v externím registru kontejneru.

Ověřování

Spusťte docker login externí registr kontejneru a ověřte ho. Možná budete muset postupovat podle dalších kroků nastavení nebo konfigurace pro konkrétního poskytovatele registru.

docker login <your-registry>

Ukázkové scénáře

V souboru šablony můžete nakonfigurovat azd nabízení a načítání imagí z externího registru azure.yaml kontejneru. Podpora více registrů kontejnerů poskytuje větší flexibilitu pro pracovní postupy nasazení.

Vyžádání z externího registru kontejneru

V tomto příkladu se během azd nasazení kontejneru načte docker.io/username/nginx:latest a přímo na něj odkazuje služba Container App Service.

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

Poznámka:

Konfigurace infrastruktury kontejneru musí při načítání kontejnerů z privátních registrů kontejnerů nakonfigurovat přihlašovací údaje.

Vyžádání, označení a nasdílení změn do externího registru

azure.yaml Zvažte soubor s následující konfigurací:

# 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   

Příkaz azd deploy stáhne nakonfigurovanou image nginx. V tomto případě se jedná o veřejný obraz na Docker Hubu, takže azd překleslí kontejner/obraz a nahraje ho do registru Dockeru.

Sestavení, označení a nasdílení změn do externího registru při nasazení azd

azure.yaml Zvažte soubor s následující konfigurací:

# 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

Příkaz azd deploy sestaví kontejner, označí ho a odešle ho do registru Dockeru.