<div><img src="https://top-fwz1.mail.ru/counter?id=3548135;js=na" style="position:absolute;left:-9999px;" alt="Top.Mail.Ru" /></div>
Публичное облако на базе VMware с управлением через vCloud Director
Вход / Регистрация
На главную
25eb9e0a-a5a8-472a-ace7-940b8bd2adf0
Облачные сервисы

Реестр контейнеров

Реестр контейнеров (Container Registry) — это хранилище для Docker-образов. Он позволяет загружать, хранить и распространять образы, которые используются при запуске контейнеров в Kubernetes и других окружениях.

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

Перейдите в раздел «Kubernetes» во вкладку «Реестры контейнеров» и нажмите кнопку «Создать» или «Добавить».

При создании укажите:

  • Регион размещения.
  • Объем хранилища — его можно будет увеличить позже. Уменьшить объем нельзя.
  • Имя реестра — должно быть уникальным, состоять из строчных латинских букв, цифр и дефисов, а также не содержать пробелов.

Screenshot 05 13 25 12:40:29

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

Screenshot 05 13 25 12:41:20

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

Обзор интерфейса

Дашборд

Отображает:

  • Занятый объем хранилища
  • Использование входящего и исходящего трафика
  • Команду для авторизации в реестре

Screenshot 05 14 25 12:04:58

Репозитории

Во вкладке «Репозитории» отображаются:

  • Список всех репозиториев в реестре
  • Образы внутри каждого репозитория
  • Теги и хеши образов

Selection 286

При нажатии на три точки рядом с образом или репозиторием вы можете:

  • Удалить образ
  • Удалить весь репозиторий

Настройки

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

Screenshot 05 14 25 12:06:53

История

Во вкладке «История» отображаются все действия, выполненные с реестром.

Авторизация

Для авторизации в реестре используйте команду, указанную в «Дашборде»:

docker login имя_реестра.registry.twcstorage.ru

После выполнения команды:

  • В качестве имени пользователя укажите любое значение (например, имя реестра)
  • При запросе пароля введите токен, полученный при создании реестра

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

Перед загрузкой нужно назначить тег, включающий адрес реестра и имя репозитория:

docker tag имя_образа имя_реестра.registry.twcstorage.ru/имя_репозитория/имя_образа:тег

Замените:

  • имя_образа — на название вашего локального образа
  • имя_реестра — на имя, указанное при создании реестра
  • имя_репозитория — на желаемое имя репозитория. При указании несуществующего имени, репозиторий с таким именем будет создан автоматически.
  • тег — на нужный тег, например v1.0 или latest

После тегирования загрузите образ:

docker push имя_реестра.registry.twcstorage.ru/имя_репозитория/имя_образа:тег

Скачивание образа

Скачать образ можно по тегу:

docker pull имя_реестра.registry.twcstorage.ru/имя_репозитория/имя_образа:тег

Или по хешу:

docker pull имя_реестра.registry.twcstorage.ru/имя_репозитория@sha256:хеш

Управление реестром с помощью regctl

Управлять реестром можно не только через панель управления, но и с помощью сторонних CLI-инструментов. Один из наиболее удобных — это regctl, кроссплатформенная утилита для работы с реестрами.

Установка

Скачайте бинарный файл:

curl -L https://github.com/regclient/regclient/releases/latest/download/regctl-linux-amd64 -o regctl

Сделайте его исполняемым:

chmod +x regctl

Переместите в системную директорию:

sudo mv regctl /usr/local/bin/regctl

Проверьте установку:

regctl version

Авторизация

Для авторизации выполните команду:

regctl registry login имя_реестра.registry.twcstorage.ru \
  --user имя_пользователя \
  --pass токен

Где:

  • имя_реестра — имя, указанное при создании реестра
  • имя_пользователя — любое значение
  • токен — токен, выданный при создании реестра

После выполнения команды данные будут сохранены в ~/.regctl/config.json, и повторная авторизация не потребуется.

Использование

Получить список всех доступных команд:

regctl

Вывести список всех репозиториев:

regctl repo ls имя_реестра.registry.twcstorage.ru

Просмотр тегов образа:

regctl tag ls имя_реестра.registry.twcstorage.ru/имя_репозитория/имя_образа

Получение информации об образе:

regctl image inspect имя_реестра.registry.twcstorage.ru/имя_репозитория/имя_образа:тег

Удаление образа:

regctl image rm имя_реестра.registry.twcstorage.ru/имя_репозитория/имя_образа:тег

Загрузка Helm-чартов

Реестр поддерживает спецификацию OCI (Open Container Initiative), поэтому вы можете хранить в нем не только Docker-образы, но и другие артефакты — например, Helm-чарты.

Сейчас для загрузки Helm-чартов можно использовать как helm, так и стороннюю утилиту oras.

Через Helm

Поддержка работы с OCI-реестрами появилась в helm начиная с версии 3.8.0 и считается стабильной с 3.9.0.

Авторизация

Для авторизации используйте команду:

helm registry login имя_реестра.registry.twcstorage.ru -u iam

В качестве пароля укажите токен, выданный при создании реестра.

Упаковка чарта

Перед загрузкой необходимо упаковать чарт:

helm package ./имя_чарта

В результате будет создан архив, например, mychart-0.1.0.tgz. Имя файла формируется на основе названия и версии из файла Chart.yaml.

Загрузка чарта

Для загрузки чарта используйте команду:

helm push имя_запакованного_чарта oci://имя_реестра.registry.twcstorage.ru/имя_репозитория

Helm автоматически определит имя чарта и версию из архива.

Скачивание чарта

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

helm pull oci://имя_реестра.registry.twcstorage.ru/имя_репозитория/имя_чарта --version тег

Через oras

Альтернативный способ загрузки чартов в реестр — с помощью утилиты oras, которая позволяет загружать любые файлы как артефакты OCI.

Установка

Перейдите на страницу релизов и скачайте архив для нужной ОС.

Либо воспользуйтесь wget. Например, для Linux:

wget https://github.com/oras-project/oras/releases/download/v1.2.3/oras_1.2.3_linux_amd64.tar.gz

Распакуйте архив:

tar -xvzf oras_1.2.3_linux_amd64.tar.gz

Переместите бинарный файл:

sudo mv oras /usr/local/bin/

Проверьте, что утилита работает:

oras version

Авторизация

Перед использованием необходимо авторизоваться в реестре:

oras login имя_реестра.registry.twcstorage.ru

После выполнения команды:

  • В качестве имени пользователя укажите любое значение (например, имя реестра).

  • При запросе пароля введите токен, полученный при создании реестра.

Загрузка чарта

Перед загрузкой необходимо упаковать чарт:

helm package ./имя_чарта

В результате будет создан архив, например, mychart-0.1.0.tgz. Имя файла формируется на основе названия и версии из файла Chart.yaml.

Теперь загрузите его в реестр:

oras push имя_реестра.registry.twcstorage.ru/имя_репозитория/имя_чарта:тег имя_запакованного_чарта

Проверьте, что артефакт успешно загружен:

oras manifest fetch имя_реестра.registry.twcstorage.ru/имя_репозитория/имя_чарта:тег

Команда выведет OCI-манифест с указанием типа артефакта, размера, хеша и других метаданных.

Скачивание 

Для скачивания артефакта при помощи oras воспользуйтесь командой:

oras pull имя_реестра.registry.twcstorage.ru/helm/mychart:1.0

Артефакт будет загружен в текущую директорию.

Была ли статья полезна?
Ваша оценка очень важна
Пока нет комментариев