Rychlý start: Vytvoření privátního registru kontejneru pomocí Azure PowerShell

Azure Container Registry je služba privátního registru pro vytváření, ukládání a správu imagí kontejnerů a souvisejících artefaktů. V tomto rychlém startu vytvoříte instanci registru kontejneru Azure s Azure PowerShell. Potom pomocí příkazů Dockeru nasdílejte image kontejneru do registru a nakonec image stáhněte a spusťte z registru.

Požadavky

Poznámka

K interakci s Azure doporučujeme použít modul Azure Az PowerShell. Začněte tím, že si projdete téma Instalace Azure PowerShellu. Informace o tom, jak migrovat na modul Az PowerShell, najdete v tématu Migrace Azure PowerShellu z AzureRM na Az.

Tento rychlý start vyžaduje Azure PowerShell modul. Svou nainstalovanou verzi zjistíte spuštěním příkazu Get-Module -ListAvailable Az. Pokud potřebujete instalaci nebo upgrade, přečtěte si téma Instalace modulu Azure PowerShell.

Je také nutné mít Docker nainstalovaný místně. Docker poskytuje balíčky pro systémy macOS, Windows a Linux.

Azure Cloud Shell neobsahuje všechny požadované součásti Dockeru (démon dockerd), a proto pro tento rychlý start nelze Cloud Shell použít.

Přihlášení k Azure

Přihlaste se ke svému předplatnému Azure pomocí příkazu Connect-AzAccount a postupujte podle pokynů na obrazovce.

Connect-AzAccount

Vytvoření skupiny prostředků

Po ověření v Azure vytvořte skupinu prostředků pomocí rutiny New-AzResourceGroup. Skupina prostředků je logický kontejner, ve kterém nasazujete a spravujete prostředky Azure.

New-AzResourceGroup -Name myResourceGroup -Location EastUS

Vytvoření registru kontejneru

Dále vytvořte registr kontejneru v nové skupině prostředků pomocí příkazu New-AzContainerRegistry .

Název registru musí být jedinečný v rámci Azure a musí obsahovat 5 až 50 alfanumerických znaků. Následující příklad vytvoří registr s názvem "mycontainerregistry". V následujícím příkazu nahraďte mycontainerregistry a pak ho spusťte a vytvořte registr:

$registry = New-AzContainerRegistry -ResourceGroupName "myResourceGroup" -Name "mycontainerregistry" -EnableAdminUser -Sku Basic

Tip

V tomto rychlém startu vytvoříte registr úrovně Basic, což je cenově optimalizovaná možnost, aby se vývojáři dozvěděli o Azure Container Registry. Zvolte další úrovně pro zvýšení propustnosti úložiště a image a možnosti, jako je připojení pomocí privátního koncového bodu. Podrobnosti o dostupných úrovních služby (SKU) najdete v tématu Úrovně služby Container Registry.

Přihlášení k registru

Před nasdílením a vyžádáním imagí kontejneru se musíte k registru přihlásit pomocí rutiny Connect-AzContainerRegistry . Následující příklad používá stejné přihlašovací údaje, pomocí které jste se přihlásili při ověřování v Azure pomocí rutiny Connect-AzAccount .

Poznámka

V následujícím příkladu je hodnota název $registry.Name prostředku, nikoli plně kvalifikovaný název registru.

Connect-AzContainerRegistry -Name $registry.Name

Příkaz po dokončení vrátí zprávu Login Succeeded (Přihlášení bylo úspěšné).

Odeslání image do registru

Pokud chcete nasdílet image do služby Azure Container Registry, musíte nejprve mít nějakou image. Pokud ještě nemáte žádné místní image kontejneru, spusťte následující příkaz docker pull , který stáhne existující veřejnou image. V tomto příkladu hello-world stáhněte image ze služby Microsoft Container Registry.

docker pull mcr.microsoft.com/hello-world

Před odesláním image do registru ji musíte označit plně kvalifikovaným názvem přihlašovacího serveru registru. Název přihlašovacího serveru je ve formátu <název_>registru.azurecr.io (musí být všechna malá písmena), například mycontainerregistry.azurecr.io.

Označte image pomocí příkazu docker tag. Nahraďte <login-server> názvem přihlašovacího serveru vaší instance ACR.

docker tag mcr.microsoft.com/hello-world <login-server>/hello-world:v1

Příklad:

docker tag mcr.microsoft.com/hello-world mycontainerregistry.azurecr.io/hello-world:v1

Nakonec pomocí docker push nasdílejte image do instance registru. Nahraďte <login-server> názvem přihlašovacího serveru instance registru. Tento příklad vytvoří úložiště hello-world obsahující hello-world:v1 image.

docker push <login-server>/hello-world:v1

Po nasdílením image do registru kontejneru hello-world:v1 odeberte image z místního prostředí Dockeru. (Všimněte si, že tento příkaz docker rmi neodebere image z úložiště hello-world ve vašem registru kontejneru Azure.)

docker rmi <login-server>/hello-world:v1

Spuštění image z registru

Teď můžete image kontejneru hello-world:v1 vyžádat a spustit z registru kontejneru pomocí příkazu Docker run:

docker run <login-server>/hello-world:v1  

Příklad výstupu:

Unable to find image 'mycontainerregistry.azurecr.io/hello-world:v1' locally
v1: Pulling from hello-world
Digest: sha256:662dd8e65ef7ccf13f417962c2f77567d3b132f12c95909de6c85ac3c326a345
Status: Downloaded newer image for mycontainerregistry.azurecr.io/hello-world:v1

Hello from Docker!
This message shows that your installation appears to be working correctly.

[...]

Vyčištění prostředků

Jakmile dokončíte práci s prostředky, které jste vytvořili v tomto rychlém startu, pomocí příkazu Remove-AzResourceGroup odeberte skupinu prostředků, registr kontejneru a image kontejnerů, které jsou tam uložené:

Remove-AzResourceGroup -Name myResourceGroup

Další kroky

V tomto rychlém startu jste vytvořili Azure Container Registry s Azure PowerShell, nasdílili jste image kontejneru a stáhli a spustili image z registru. Pokud se chcete podrobněji podívat na ACR, pokračujte Azure Container Registry kurzy.