Nahrajte svůj první obraz do kontejnerového registru Azure pomocí Docker CLI

Registr kontejnerů Azure ukládá a spravuje privátní image kontejnerů a další artefakty, podobně jako Docker Hub ukládá veřejné image kontejnerů Dockeru. Rozhraní příkazového řádku Dockeru (Docker CLI) můžete použít k přihlášení, zápisu, vyžádání a dalším operacím imagí kontejneru v registru kontejneru.

V následujících krocích stáhnete veřejný obraz Nginx, označíte ho pro váš soukromý registr kontejnerů Azure, nahrajete ho do registru a poté ho stáhnete z registru.

Požadavky

  • Předplatné služby Azure. Pokud ještě nemáte předplatné Azure, vytvořte si napřed bezplatný účet.
  • Registr kontejnerů Azure ve vašem předplatném Azure. Můžete ho vytvořit pomocí webu Azure Portal, Azure CLI nebo Azure PowerShellu.
  • Musíte mít také místně nainstalovaný Docker. Docker nabízí balíčky pro snadnou konfiguraci Dockeru v libovolném systému macOS, Windows nebo Linux.

Přihlášení k registru kontejneru

Existuje několik způsobů, jak se ověřit v registru kontejneru.

Doporučená metoda při práci na příkazovém řádku je pomocí příkazu Azure CLI az acr login. Pokud chcete získat přístup k registru s názvem myregistry, přihlaste se k Azure CLI a pak se ověřte ve svém registru:

az login
az acr login --name myregistry

Můžete se také přihlásit pomocí docker login. Osvědčené postupy pro správu přihlašovacích údajů pro ověřování najdete v referenčních informacích k příkazu docker login .

Například jste k registru přiřadili služební objekt pro scénář automatizace. Když spustíte následující příkaz, zadejte interaktivně po zobrazení výzvy ID aplikace aplikačního objektu služby (uživatelské jméno) a heslo:

docker login myregistry.azurecr.io

Tip

Při použití docker login a označování snímků pro nahrání do vašeho registru vždy zadejte úplný název registru (psaný malými písmeny). V příkladech v tomto článku je plně kvalifikovaný název myregistry.azurecr.io.

Stažení veřejného image Nginx

Nejprve stáhněte veřejnou image Nginx do místního počítače. Tento příklad stáhne oficiální Nginx image.

docker pull nginx

Místní spuštění kontejneru

Pomocí příkazu docker run spusťte místní instanci kontejneru Nginx interaktivně (-it) na portu 8080. Argument --rm určuje, že se kontejner má odebrat, když ho zastavíte.

docker run -it --rm -p 8080:80 nginx

Přejděte na http://localhost:8080 a zobrazte výchozí webovou stránku obsluhovanou serverem Nginx ve spuštěném kontejneru. Měla by se zobrazit stránka podobná této:

Server Nginx na místním počítači

Vzhledem k tomu, že jste kontejner spustili interaktivně -it, můžete po přechodu do něj v prohlížeči zobrazit výstup serveru Nginx na příkazovém řádku.

Kontejner zastavíte a odeberete stisknutím klávesy Ctrl+C.

Vytvoření aliasu obrázku

Pomocí značky Dockeru vytvořte alias image s plně kvalifikovanou cestou k vašemu registru. V tomto příkladu se určí obor názvů samples, aby se zabránilo nepořádku v kořenovém adresáři registru.

docker tag nginx myregistry.azurecr.io/samples/nginx

Pro více informací o tagování s obory názvů si přečtěte [osvědčené postupy pro obory názvů repozitáře](container-registry-best-practices.md#repository-namespaces).

Odeslat obraz do vlastního registru

Teď, když jste image označili plně kvalifikovanou cestou k vašemu privátnímu registru, můžete ji odeslat do registru pomocí docker push:

docker push myregistry.azurecr.io/samples/nginx

Stažení image z vlastního registru

Pomocí příkazu docker pull stáhněte image z registru:

docker pull myregistry.azurecr.io/samples/nginx

Spuštění kontejneru Nginx

Pomocí příkazu docker run spusťte image, kterou jste stáhli z registru:

docker run -it --rm -p 8080:80 myregistry.azurecr.io/samples/nginx

Přejděte na http://localhost:8080 pro zobrazení spuštěného kontejneru.

Kontejner zastavíte a odeberete stisknutím klávesy Ctrl+C.

Odebrat obrázek (volitelné)

Pokud už image Nginx nepotřebujete, můžete ji odstranit místně pomocí příkazu docker rmi .

docker rmi myregistry.azurecr.io/samples/nginx

Pokud chcete odebrat image z registru kontejneru Azure, použijte az acr repository delete. Následující příkaz například odstraní manifest odkazovaný značkou samples/nginx:latest , všechna jedinečná data vrstvy a všechny ostatní značky odkazující na manifest.

az acr repository delete --name myregistry --image samples/nginx:latest

Další kroky

Teď, když znáte základy, jste připraveni začít používat registr. Například nasaďte image kontejneru z registru do: