Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Azure Developer CLI (azd) podporuje externí registry kontejnerů třetích stran pro nasazení. Chcete-li tuto funkci použít, musíte se před voláním příkazu azd deploy ručně autentizovat k externímu registru kontejnerů.
Ověřování pomocí Dockeru je vyžadováno pouze tehdy, když azd za vás provádí operace s obrazy, jako je jejich stažení, sestavení, označení tagy nebo nahrání. Pokud je služba nakonfigurována pomocí services.<name>.docker.imagePassthrough: true, azd znovu použije nakonfigurovaný vzdálený obraz beze změn. V takovém případě azd nevyžaduje Docker ani Podman a pro tuto službu neprovádí žádné ověřování vůči registru ani kroky životního cyklu imagí.
Ověřování
Spusťte docker login a ověřte se vůči externímu registru kontejnerů. 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 azure.yaml vaší šablony můžete nakonfigurovat azd tak, aby nahrával a stahoval image z externího registru kontejnerů. Podpora více registrů kontejnerů poskytuje větší flexibilitu pro pracovní postupy nasazení.
Stažení z externího registru kontejnerů
V tomto příkladu se během nasazení azd kontejner stáhne z docker.io/username/nginx:latest a služba Container App Service na něj přímo odkazuje.
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.
Pokud chcete nasadit vzdálenou image bez nutnosti Dockeru nebo Podmana, nastavte services.<name>.docker.imagePassthrough: true a zadejte plně kvalifikovanou image, včetně registru, v services.<name>.image:
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
docker:
imagePassthrough: true
imagePassthrough má následující omezení:
- Vyžaduje nastavení možnosti
services.<name>.image. - Nedá se kombinovat s
docker.remoteBuild. - Nepodporuje příznaky pro přepsání obrázku
--from-package,azd publisha--topro tuto službu.
Vyžádání, označení a nasdílení změn do externího registru
Zvažte soubor azure.yaml 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í tagem a nahrání do externího registru při azd deploy
Zvažte soubor azure.yaml 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.