Реестр контейнеров (Container Registry) — это хранилище для Docker-образов. Он позволяет загружать, хранить и распространять образы, которые используются при запуске контейнеров в Kubernetes и других окружениях.
Создание реестра
Перейдите в раздел «Kubernetes» во вкладку «Реестры контейнеров» и нажмите кнопку «Создать» или «Добавить».
При создании укажите:
- Регион размещения.
- Объем хранилища — его можно будет увеличить позже. Уменьшить объем нельзя.
- Имя реестра и проект. Имя должно быть уникальным, состоять из строчных латинских букв, цифр и дефисов, а также не содержать пробелов.

После создания отобразится токен — он используется для авторизации при работе с реестром. Токен отображается только один раз, обязательно сохраните его.

Если токен был утерян, вы можете выпустить новый в разделе «API и Terraform». Обратите внимание: если токен был создан для всех проектов, он предоставляет доступ ко всем реестрам на аккаунте. Если же токен был создан для конкретного проекта, доступ будет открыт ко всем реестрам внутри этого проекта. В случае компрометации токена удалите его в разделе «API и Terraform». Токен, созданный при создании реестра, начинается с registry-.
Обзор интерфейса
Дашборд
Отображает:
- Занятый объем хранилища
- Использование входящего и исходящего трафика
- Команду для авторизации в реестре

Репозитории
Во вкладке «Репозитории» отображаются:
- Список всех репозиториев в реестре
- Образы внутри каждого репозитория
- Теги и хеши образов

При нажатии на три точки рядом с образом или репозиторием вы можете:
- Удалить образ
- Удалить весь репозиторий
Настройки
В разделе вы можете изменить объем хранилища. Для этого нажмите «Изменить размер реестра», выберите нужный объем и сохраните изменения. Уменьшить размер нельзя.

Также в настройках можно изменить проект, к которому относится реестр.
История
Во вкладке «История» отображаются все действия, выполненные с реестром.
Авторизация
Для авторизации в реестре используйте команду, указанную в «Дашборде»:
После выполнения команды:
- В качестве имени пользователя укажите любое значение (например, имя реестра)
- При запросе пароля введите токен, полученный при создании реестра
Загрузка образа
Перед загрузкой нужно назначить тег, включающий адрес реестра и имя репозитория:
Замените:
имя_образа— на название вашего локального образа. Если для образа используется тег, отличный отlatest, укажите его явным образом.имя_реестра— на имя, указанное при создании реестра.имя_репозитория— на желаемое имя репозитория. При указании несуществующего имени, репозиторий с таким именем будет создан автоматически.тег— на нужный тег, напримерv1.0илиlatest.
После тегирования загрузите образ:
Скачивание образа
Скачать образ можно по тегу:
Или по хешу:
Использование реестра в кластере Kubernetes
Чтобы использовать реестр в кластере Kubernetes, необходимо создать секрет с данными для подключения. Это можно сделать встроенными в панель управления средствами.
В панели управления кластером откройте вкладку «Управление» и нажмите кнопку «Изменить» напротив строки «Нет подключенных реестров».

В открывшемся окне выберите существующий реестр или создайте новый. При подключении укажите неймспейс, в котором будет размещен секрет. Использовать реестр можно только в том неймспейсе, к которому он подключен.
После настройки нажмите кнопку «Сохранить», чтобы создать секрет в кластере.

Повторно открыв меню подключения реестра, вы увидите имя секрета, созданного в кластере.
Проверить наличие секрета можно командой:
где <namespace> — это неймспейс, выбранный при подключении.
Пример вывода:
Чтобы использовать реестр, укажите его в манифесте как источник образа и добавьте imagePullSecrets. Например:
Управление реестром с помощью regctl
Управлять реестром можно не только через панель управления, но и с помощью сторонних CLI-инструментов. Один из наиболее удобных — это regctl, кроссплатформенная утилита для работы с реестрами.
Установка
Скачайте бинарный файл:
Сделайте его исполняемым:
Переместите в системную директорию:
Проверьте установку:
Авторизация
Для авторизации выполните команду:
Где:
имя_реестра— имя, указанное при создании реестраимя_пользователя— любое значениетокен— токен, выданный при создании реестра
После выполнения команды данные будут сохранены в ~/.regctl/config.json, и повторная авторизация не потребуется.
Использование
Получить список всех доступных команд:
Вывести список всех репозиториев:
Просмотр тегов образа:
Получение информации об образе:
Удаление образа:
Загрузка Helm-чартов
Реестр поддерживает спецификацию OCI (Open Container Initiative), поэтому вы можете хранить в нем не только Docker-образы, но и другие артефакты — например, Helm-чарты.
Сейчас для загрузки Helm-чартов можно использовать как helm, так и стороннюю утилиту oras.
Через Helm
Поддержка работы с OCI-реестрами появилась в helm начиная с версии 3.8.0 и считается стабильной с 3.9.0.
Авторизация
Для авторизации используйте команду:
В качестве пароля укажите токен, выданный при создании реестра.
Упаковка чарта
Перед загрузкой необходимо упаковать чарт:
В результате будет создан архив, например, mychart-0.1.0.tgz. Имя файла формируется на основе названия и версии из файла Chart.yaml.
Загрузка чарта
Для загрузки чарта используйте команду:
Helm автоматически определит имя чарта и версию из архива.
Скачивание чарта
Для скачивания чарта воспользуйтесь командой:
Через oras
Альтернативный способ загрузки чартов в реестр — с помощью утилиты oras, которая позволяет загружать любые файлы как артефакты OCI.
Установка
Перейдите на страницу релизов и скачайте архив для нужной ОС.
Либо воспользуйтесь wget. Например, для Linux:
Распакуйте архив:
Переместите бинарный файл:
Проверьте, что утилита работает:
Авторизация
Перед использованием необходимо авторизоваться в реестре:
После выполнения команды:
-
В качестве имени пользователя укажите любое значение (например, имя реестра).
-
При запросе пароля введите токен, полученный при создании реестра.
Загрузка чарта
Перед загрузкой необходимо упаковать чарт:
В результате будет создан архив, например, mychart-0.1.0.tgz. Имя файла формируется на основе названия и версии из файла Chart.yaml.
Теперь загрузите его в реестр:
Проверьте, что артефакт успешно загружен:
Команда выведет OCI-манифест с указанием типа артефакта, размера, хеша и других метаданных.
Скачивание
Для скачивания артефакта при помощи oras воспользуйтесь командой:
Артефакт будет загружен в текущую директорию.