Краткое руководство. Создание реестра контейнеров Azure с помощью портала Azure

Реестр контейнеров Azure — это служба частного реестра для создания, хранения и обслуживания образов контейнеров и связанных с ними артефактов. В этом кратком руководстве показано, как создать экземпляр реестра контейнеров Azure с помощью портала Azure. Затем используйте команды Docker, чтобы отправить образ контейнера в реестр, после чего извлеките образ из контейнера и запустите его.

Чтобы войти в реестр для работы с образами контейнеров, в этом кратком руководстве требуется использовать Azure CLI (рекомендуется версия 2.0.55 или более поздняя). Чтобы узнать версию, выполните команду az --version. Если вам необходимо выполнить установку или обновление, см. статью Установка Azure CLI 2.0.

Кроме того, необходимо установить Docker локально с запущенной управляющей программой. Docker содержит пакеты, которые позволяют быстро настроить Docker в любой системе Mac, Windows или Linux.

Вход в Azure

Войдите на портал Azure.

Создание реестра контейнеров

Последовательно выберите Создать ресурс>Контейнеры>Реестр контейнеров.

Переход к реестру контейнеров на портале

На вкладке Основные сведения введите значения в поле Группа ресурсов и Имя реестра. Имя реестра должно быть уникальным в пределах Azure и содержать от 5 до 50 буквенно-цифровых символов. В целях этого руководства создайте группу ресурсов в регионе West US в расположении с именем myResourceGroup. Для SKU задайте значение "Базовый".

Создание реестра контейнеров на портале

Примите значения по умолчанию для остальных параметров. Щелкните Просмотр и создание. Проверив параметры, нажмите кнопку Создать.

Совет

В этом кратком руководстве описано, как создать реестр ценовой категории Базовый. Это оптимальный (недорогой) вариант для разработчиков, которые знакомятся с Реестром контейнеров Azure. Выберите другие уровни, чтобы повысить пропускную способность хранилища и образов, а также получить такие возможности, как подключение с использованием частной конечной точки. Дополнительные сведения об уровнях служб (SKU) см. в статье Уровни служб реестра контейнеров.

Когда появится сообщение Развертывание прошло успешно, выберите реестр контейнеров на портале.

Страница обзора реестра контейнеров на портале

Запишите имя реестра и значение параметра Сервер для входа, представляющее собой полное имя, которое заканчивается на azurecr.io, в облаке Azure. Эти значения используются в следующих шагах при отправке и извлечении образов с помощью Docker.

Вход в раздел реестра

Перед отправкой и извлечением образов контейнеров необходимо войти в экземпляр реестра. Войдите в Azure CLI на локальном компьютере, а затем выполните команду az acr login. При выполнении входа с помощью Azure CLI укажите только имя ресурса реестра. Не используйте при этом полное имя сервера для входа.

az acr login --name <registry-name>

Пример

az acr login --name mycontainerregistry

По завершении команда возвращает Login Succeeded.

Отправка образа в реестр

Чтобы отправить образ в реестр контейнеров Azure, сначала нужно получить этот образ. Если у вас еще нет образов локального контейнера, используйте следующую команду docker pull, чтобы извлечь существующий общедоступный образ. Для этого примера извлеките образ hello-world из Реестра контейнеров Майкрософт.

docker pull mcr.microsoft.com/hello-world

Прежде чем отправить образ в реестр, нужно добавить в него тег с полным именем сервера входа для реестра. Имя сервера для входа имеет формат <registry-name>.azurecr.io (должно быть в нижнем регистре), например mycontainerregistry.azurecr.io.

Присвойте образу тег с помощью команды docker tag. Замените значение <login-server> именем сервера входа для экземпляра ACR.

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

Пример

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

Наконец, воспользуйтесь командой docker push для принудительной отправки образа в экземпляр реестра. Замените значение <login-server> именем сервера входа для экземпляра реестра. В этом примере создается репозиторий hello-world с образом hello-world:v1.

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

После передачи образа в реестр контейнеров удалите образ hello-world:v1 из локальной среды Docker. (Обратите внимание, что команда docker rmi не приводит к удалению образа из репозитория hello-world в реестре контейнеров Azure.)

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

Список образов контейнеров

Чтобы вывести список образов в вашем реестре, перейдите в реестр на портале и выберите Репозитории, а затем выберите репозиторий hello-world, созданный с помощью docker push.

Список образов контейнеров на портале

Выбрав репозиторий hello-world, вы увидите образ с тегом v1 в разделе Теги.

Запуск образа из реестра

Теперь вы можете извлекать и запускать образ контейнера hello-world:v1 из реестра контейнеров с помощью команды docker run.

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

Выходные данные примера:

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.

[...]

Очистка ресурсов

Чтобы очистить ресурсы, перейдите к группе ресурсов myResourceGroup на портале. После загрузки группы ресурсов щелкните пункт Удалить группу ресурсов, чтобы удалить группу ресурсов, реестр контейнеров и сохраненные образы контейнеров.

Удаление группы ресурсов на портале

Дальнейшие действия

С помощью этого краткого руководства вы создали Реестр контейнеров Azure с использованием портала Azure, отправили образ контейнера, а затем извлекли этот образ оттуда и запустили его. Чтобы продолжить работу с Реестром контейнеров Azure, перейдите к следующим руководствам.