Rychlý start: Vytvořit privátní registr pomocí rozhraní příkazového řádku AzureQuickstart: 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. Potom použijte příkazy Dockeru pro nasdílení image kontejneru do registru a nakonec o přijetí změn 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 použití rozhraní příkazového řádku Azure (verze 2.0.55 nebo později doporučené).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 nabízí balíčky pro snadnou konfiguraci Dockeru v libovolném systému macOS, Windows nebo 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í registru, který je možnost náklady optimalizovaná pro vývojáře, další informace o službě 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 o úrovních služeb najdete v tématu skladové položky 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 ve výstupu, 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 odesíláním a vyžadováním imagí kontejnerů, musíte se 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é Image místního kontejneru, spusťte následující příkaz [operace docker pull] docker-pull příkaz a vyžádejte si existující image z Docker Hubu.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 tomto příkladu o přijetí změn hello-world bitové kopie.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 <název registru>. azurecr.io (malými písmeny), 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ří hello-world úložiště, který obsahuje hello-world:v1 image.This example creates the hello-world repository, containing the hello-world:v1 image.

docker push <acrLoginServer>/hello-world:v1

Po nasdílení změn image do vašeho registru kontejneru, odeberte hello-world:v1 obrázek z vašeho 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 [docker rmi] docker-rmi příkazem neodebere image z hello-world úložiště v Azure container registry.)(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 uvádí ú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 hello-world úložiště.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

Spuštění image z registruRun image from registry

Teď můžete vyžádat a spustit hello-world:v1 image kontejneru z registru kontejnerů pomocí dockeru spustit: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 použít [odstranění skupiny az] az-group-delete příkazu odeberte skupinu prostředků, do registru kontejneru a imagí kontejnerů v ní uloženy.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 službu Azure Container Registry pomocí Azure CLI, nahráli image kontejneru do registru a vyžádá a spustili image z registru.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 na Azure Container Registry kurzy pro najdete podrobnější přehled služby ACR.Continue to the Azure Container Registry tutorials for a deeper look at ACR.