Rychlý start: Vytvoření soukromého registru kontejnerů pomocí Azure CLIQuickstart: Create a private container registry using the Azure CLI

Azure Container Registry je spravovaná služba registru kontejnerů Dockeru sloužící k ukládání privátních imagí kontejnerů Dockeru.Azure Container Registry is a managed Docker container registry service used for storing private Docker container images. Tato příručka podrobně popisuje vytvoření instance služby Azure Container Registry pomocí Azure CLI.This guide details creating an Azure Container Registry instance using the Azure CLI. Pak pomocí příkazů Docker nahrajte image kontejneru do registru a nakonec si vydejte a spusťte image z registru.Then, use Docker commands to push a container image into the registry, and finally pull and run the image from your registry.

Tento rychlý Start vyžaduje, abyste spustili Azure CLI (doporučuje se verze 2.0.55 nebo novější).This quickstart requires that you are running the Azure CLI (version 2.0.55 or later recommended). Verzi zjistíte spuštěním příkazu az --version.Run az --version to find the version. Pokud potřebujete instalaci nebo upgrade, přečtěte si téma Instalace Azure CLI.If you need to install or upgrade, see Install Azure CLI.

Je také nutné mít Docker nainstalovaný místně.You must also have Docker installed locally. Docker poskytuje balíčky, které snadno konfigurují Docker na jakémkoli systému MacOS, Windowsnebo Linux .Docker provides packages that easily configure Docker on any macOS, Windows, or Linux system.

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.Because the Azure Cloud Shell doesn't include all required Docker components (the dockerd daemon), you can't use the Cloud Shell for this quickstart.

Vytvoření skupiny prostředkůCreate a resource group

Vytvořte skupinu prostředků pomocí příkazu az group create.Create a resource group with the az group create command. Skupina prostředků Azure je logický kontejner, ve kterém se nasazují a spravují prostředky Azure.An Azure resource group is a logical container into which Azure resources are deployed and managed.

Následující příklad vytvoří skupinu prostředků myResourceGroup v umístění eastus.The following example creates a resource group named myResourceGroup in the eastus location.

az group create --name myResourceGroup --location eastus

Vytvoření registru kontejnerůCreate a container registry

V tomto rychlém startu vytvoříte základní registr, což je výhodná možnost pro vývojáře, kteří se naučí o Azure Container Registry.In this quickstart you create a Basic registry, which is a cost-optimized option for developers learning about Azure Container Registry. Podrobnosti k dostupným úrovním služeb najdete v tématu SKU služby Container Registry.For details on available service tiers, see Container registry SKUs.

Pomocí příkazu az acr create vytvořte instanci služby ACR.Create an ACR instance using the az acr create command. Název registru musí být jedinečný v rámci Azure a musí obsahovat 5 až 50 alfanumerických znaků.The registry name must be unique within Azure, and contain 5-50 alphanumeric characters. V následujícím příkladu se používá myContainerRegistry007.In the following example, myContainerRegistry007 is used. Aktualizujte název na jedinečnou hodnotu.Update this to a unique value.

az acr create --resource-group myResourceGroup --name myContainerRegistry007 --sku Basic

Po vytvoření registru je výstup podobný tomuto:When the registry is created, the output is similar to the following:

{
  "adminUserEnabled": false,
  "creationDate": "2019-01-08T22:32:13.175925+00:00",
  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myContainerRegistry007",
  "location": "eastus",
  "loginServer": "mycontainerregistry007.azurecr.io",
  "name": "myContainerRegistry007",
  "provisioningState": "Succeeded",
  "resourceGroup": "myResourceGroup",
  "sku": {
    "name": "Basic",
    "tier": "Basic"
  },
  "status": null,
  "storageAccount": null,
  "tags": {},
  "type": "Microsoft.ContainerRegistry/registries"
}

Poznamenejte si loginServer výstup, který je plně kvalifikovaný název registru (malými písmeny).Take note of loginServer in the output, which is the fully qualified registry name (all lowercase). V celé zbývající části tohoto rychlého startu se položka <acrName> používá jako zástupný symbol pro název registru kontejneru.Throughout the rest of this quickstart <acrName> is a placeholder for the container registry name.

Přihlášení k registruLog in to registry

Před vložením a stažením imagí kontejneru se musíte přihlásit k registru.Before pushing and pulling container images, you must log in to the registry. K tomu použijte příkaz az acr login.To do so, use the az acr login command.

az acr login --name <acrName>

Příkaz po dokončení vrátí zprávu Login Succeeded (Přihlášení bylo úspěšné).The command returns a Login Succeeded message once completed.

Odeslání image do registruPush image to registry

Pokud chcete nasdílet image do služby Azure Container Registry, musíte nejprve mít nějakou image.To push an image to an Azure Container registry, you must first have an image. Pokud ještě nemáte žádné místní image kontejneru, spusťte následující příkaz Docker Pull , který vyžádá existující image z Docker Hub.If you don't yet have any local container images, run the following docker pull command to pull an existing image from Docker Hub. V hello-world tomto příkladu si přetáhnete obrázek.For this example, pull the hello-world image.

docker pull hello-world

Předtím než můžete nasdílet image do registru, musíte ji označit plně kvalifikovaným názvem přihlašovacího serveru ACR.Before you can push an image to your registry, you must tag it with the fully qualified name of your ACR login server. Název přihlašovacího serveru je ve formátu <Registry-name>. azurecr.IO (všechna malá písmena), například mycontainerregistry007.azurecr.IO.The login server name is in the format <registry-name>.azurecr.io (all lowercase), for example, mycontainerregistry007.azurecr.io.

Označte image pomocí příkazu docker tag.Tag the image using the docker tag command. Nahraďte <acrLoginServer> názvem přihlašovacího serveru vaší instance ACR.Replace <acrLoginServer> with the login server name of your ACR instance.

docker tag hello-world <acrLoginServer>/hello-world:v1

Nakonec pomocí příkazu docker push nasdílejte image do instance služby ACR.Finally, use docker push to push the image to the ACR instance. Nahraďte <acrLoginServer> názvem přihlašovacího serveru vaší instance ACR.Replace <acrLoginServer> with the login server name of your ACR instance. Tento příklad vytvoří úložiště Hello-World obsahující hello-world:v1 image.This example creates the hello-world repository, containing the hello-world:v1 image.

docker push <acrLoginServer>/hello-world:v1

Po nahrání image do registru kontejneru odeberte hello-world:v1 image z místního prostředí Docker.After pushing the image to your container registry, remove the hello-world:v1 image from your local Docker environment. (Všimněte si, že tento příkaz Docker RMI neodebere image z úložiště Hello-World ve vašem registru kontejneru Azure.)(Note that this docker rmi command does not remove the image from the hello-world repository in your Azure container registry.)

docker rmi <acrLoginServer>/hello-world:v1

Výpis imagí kontejnerůList container images

Následující příklad vypíše úložiště v registru:The following example lists the repositories in your registry:

az acr repository list --name <acrName> --output table

Výstup:Output:

Result
----------------
hello-world

Následující příklad vypíše značky v úložišti Hello-World .The following example lists the tags on the hello-world repository.

az acr repository show-tags --name <acrName> --repository hello-world --output table

Výstup:Output:

Result
--------
v1

Spustit bitovou kopii z registruRun image from registry

Nyní můžete načíst a spustit hello-world:v1 image kontejneru z registru kontejneru pomocí nástroje Docker Run:Now, you can pull and run the hello-world:v1 container image from your container registry by using docker run:

docker run <acrLoginServer>/hello-world:v1  

Příklad výstupu:Example output:

Unable to find image 'mycontainerregistry007.azurecr.io/hello-world:v1' locally
v1: Pulling from hello-world
Digest: sha256:662dd8e65ef7ccf13f417962c2f77567d3b132f12c95909de6c85ac3c326a345
Status: Downloaded newer image for mycontainerregistry007.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ůClean up resources

Pokud už je nepotřebujete, můžete k odebrání skupiny prostředků, registru kontejneru a uložených imagí kontejneru použít příkaz AZ Group Delete .When no longer needed, you can use the az group delete command to remove the resource group, the container registry, and the container images stored there.

az group delete --name myResourceGroup

Další postupNext steps

V tomto rychlém startu jste vytvořili Azure Container Registry pomocí Azure CLI, nahráli jste image kontejneru do registru a z registru jste vyžádali a spustili image.In this quickstart, you created an Azure Container Registry with the Azure CLI, pushed a container image to the registry, and pulled and ran the image from the registry. Pokračujte Azure Container Registry výukové kurzy, kde najdete hlubší přehled na ACR.Continue to the Azure Container Registry tutorials for a deeper look at ACR.