Skip to content

Загрузка образа Docker

С помощью этой инструкции вы создадите реестр Artifact Registry и загрузите в него образ Docker.

Перед началом работы

  1. В веб-консоли выберите нужный проект. Если у вас нет проекта, создайте его.

  2. В списке сервисов выберите Artifact Registry. При первом запуске нажмите кнопку Активировать, для этого необходима роль admin.

  3. Для сервисного аккаунта создайте авторизованный ключ и сохраните его в отдельном файле.

  4. Установите и настройте утилиту MWS CLI:

    1. Инициализируйте профиль. Используйте авторизованный ключ созданного ранее сервисного аккаунта с ролью registry.editor.

Установка Docker

Для работы с Artifact Registry вам потребуется установить Docker на локальном компьютере.

Аутентификация в Docker Credential helper

Docker хранит учетные данные пользователя во внешнем хранилище облака MWS. Это безопаснее, чем хранить их в конфигурационном файле Docker на локальном компьютере.

Для работы с хранилищем используется программа Docker Credential helper. Она входит в состав MWS CLI.

  1. Настройте Docker на использование Docker Credential helper:

    bash
    mws registry configure-docker
  2. Убедитесь, что Docker настроен. Для этого откройте конфигурационный файл ${HOME}/.docker/config.json. В нем должна появиться строка:

    bash
    "credHelpers": {
            "registry.mwsapis.ru": "mws"
    }

Совет

Вы также можете аутентифицироваться с помощью ключа API.

Создание реестра и работа с образом

  1. Скачайте образ hello-world из репозитория Docker Hub:

    bash
    docker pull hello-world
  2. Установите тег на образ. Тег нужен для идентификации версии образа в репозитории:

    bash
    docker tag hello-world registry.mwsapis.ru/<имя проекта>/<имя реестра>/hello-world:init
  3. Загрузите образ в репозиторий MWS Artifact Registry:

    bash
    docker push registry.mwsapis.ru/<имя проекта>/<имя реестра>/hello-world:init

    Результат выполнения команды:

    bash
    The push refers to repository [registry.mwsapis.ru/<имя проекта>/<имя реестра>/hello-world]
    63a41026379f: Pushed
    init: digest: sha256:7565f2c7034d87673c5ddc3b1b8e17f8da794c31d9aa73ed26afffa1c8194889 size: 524

    Для образа будет автоматически создан новый репозиторий.

  4. Запустите образ:

    bash
    docker run registry.mwsapis.ru/<имя проекта>/<имя реестра>/hello-world:init

    Результат выполнения команды:

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