• Продукты
  • Цены
  • Гранты
  • Блог
  • Документация
вход
Logo

Переезд

Переезд с Yandex Container Registry

Yandex закрывает Container Registry 14.12.2026. Образы можно скопировать в Container Registry h3llo.cloud напрямую из реестра в реестр. Ниже команды для skopeo и crane, настройка CI и Kubernetes.

Содержание
  1. Сроки
  2. Перенос по шагам
  3. CI
  4. Kubernetes
  5. Цена
  6. Вопросы

Содержание

  1. Сроки
  2. Перенос по шагам
  3. CI
  4. Kubernetes
  5. Цена
  6. Вопросы
  1. Главная
  2. /Container Registry
  3. /Переезд с Yandex Container Registry

Сроки закрытия Yandex Container Registry

По объявлению Yandex Cloud (проверено 20.10.2026):

  • с 13.10.2026 сервис недоступен новым пользователям;
  • с 10.11.2026 реестры работают только на чтение: push не проходит, pull работает;
  • 14.12.2026 сервис отключается.

Переносить образы удобнее до 10.11: пока push работает, CI можно переключать по одному проекту и сравнивать оба реестра.

Перенос образов по шагам

  1. Создайте реестр в h3llo.cloud. В консоли откройте Container Registry и нажмите «Создать реестр». Имя — от 3 до 30 символов: строчные латинские буквы, цифры и дефис. Объём (10, 50 или 200 ГБ) — только потолок, оплачивается занятое место. Консоль покажет полный адрес вида cr.h3llo.cloud/<префикс>-<имя>.
  2. Создайте логин с правом записи. Вкладка «Доступ» → «Логины для docker login и Kubernetes», право «Запись и чтение». Пароль показывается один раз. Имя логина содержит символ $, поэтому в командах берите его в одинарные кавычки.
  3. Получите список образов в Yandex. Нужен ID реестра (crp…) и CLI yc:
yc container registry list
yc container image list --registry-id <registry-id>
  1. Войдите в оба реестра. Для Yandex подойдёт IAM-токен: он действует до 12 часов, этого хватает на перенос.
# skopeo
yc iam create-token | skopeo login cr.yandex --username iam --password-stdin
skopeo login cr.h3llo.cloud --username '<логин>'

# или crane
crane auth login cr.yandex -u iam -p "$(yc iam create-token)"
crane auth login cr.h3llo.cloud -u '<логин>' -p "$CR_PASSWORD"
  1. Скопируйте образы. Один тег, все теги репозитория или всё через crane:
# один тег, все архитектуры multi-arch образа
skopeo copy --all \
  docker://cr.yandex/<registry-id>/my-app:1.0 \
  docker://cr.h3llo.cloud/<префикс>-<имя>/my-app:1.0

# все теги репозитория my-app → cr.h3llo.cloud/<префикс>-<имя>/my-app
skopeo sync --all --src docker --dest docker \
  cr.yandex/<registry-id>/my-app \
  cr.h3llo.cloud/<префикс>-<имя>

# то же через crane
for tag in $(crane ls cr.yandex/<registry-id>/my-app); do
  crane copy "cr.yandex/<registry-id>/my-app:$tag" "cr.h3llo.cloud/<префикс>-<имя>/my-app:$tag"
done
  1. Сверьте дайджесты. Если копия точная, дайджесты совпадают:
crane digest cr.yandex/<registry-id>/my-app:1.0
crane digest cr.h3llo.cloud/<префикс>-<имя>/my-app:1.0

Переключение CI на новый реестр

Заведите в CI переменные CR_USER, CR_PASSWORD (masked) и CR_ADDRESS с полным адресом реестра. Дальше меняется только адрес и способ входа.

GitLab CI

build:
  image: docker:27
  services: [docker:27-dind]
  script:
    - echo "$CR_PASSWORD" | docker login cr.h3llo.cloud -u "$CR_USER" --password-stdin
    - docker build -t "$CR_ADDRESS/my-app:$CI_COMMIT_SHORT_SHA" .
    - docker push "$CR_ADDRESS/my-app:$CI_COMMIT_SHORT_SHA"

GitHub Actions

- uses: docker/login-action@v3
  with:
    registry: cr.h3llo.cloud
    username: ${{ secrets.CR_USER }}
    password: ${{ secrets.CR_PASSWORD }}
- run: |
    docker build -t "${{ vars.CR_ADDRESS }}/my-app:${{ github.sha }}" .
    docker push "${{ vars.CR_ADDRESS }}/my-app:${{ github.sha }}"

Kubernetes: секрет для pull и новые адреса образов

В Managed Kubernetes h3llo.cloud реестр подключается из панели: «Кластеры» → «Подключить к кластеру». Платформа создаёт логин только для чтения, секрет h3-cr-<реестр> в выбранных namespace и добавляет его в imagePullSecrets сервис-аккаунтов.

В любом другом кластере, в том числе в Yandex Managed Kubernetes, секрет создаётся вручную логином «Только чтение»:

kubectl -n <namespace> create secret docker-registry h3-cr-<реестр> \
  --docker-server=cr.h3llo.cloud --docker-username='<логин>' --docker-password='<пароль>'
kubectl -n <namespace> patch serviceaccount default \
  -p '{"imagePullSecrets":[{"name":"h3-cr-<реестр>"}]}'

Затем замените cr.yandex/<registry-id> на адрес нового реестра в манифестах, values Helm или Kustomize и выкатите изменения.

Цена Container Registry h3llo.cloud

Оплачивается фактически занятое место после дедупликации слоёв и исходящий трафик. Проверка образов на уязвимости, логины и правила очистки входят в цену. Бесплатного объёма нет.

Цены Container Registry
ПозицияЦена
Хранение образов, 1 ГБ4,30 ₽ / мес
Исходящий трафик, 1 ГБ0,90 ₽ / ГБ

Подробнее о сервисе — на странице Container Registry, все цены — в тарифах.

Частые вопросы о переезде

Когда закрывается Yandex Container Registry?+

По объявлению Yandex Cloud с 13.10.2026 сервис недоступен новым пользователям, с 10.11.2026 работает только на чтение, 14.12.2026 отключается. После 10.11 загружать образы в старый реестр уже нельзя, поэтому CI лучше перевести на новый реестр раньше.

Можно ли перенести образы без docker pull и docker push?+

Да. skopeo и crane копируют образ из реестра в реестр напрямую, без локального Docker. Они сохраняют дайджест и все архитектуры multi-arch образа, если копировать с флагом --all (skopeo) или командой crane copy.

Сколько стоит реестр в h3llo.cloud?+

Хранение — 4,30 ₽ за ГБ фактически занятого места в месяц, скачивание образов — 0,90 ₽ за ГБ. Общие слои образов оплачиваются один раз, проверка на уязвимости входит в цену.

Переносятся ли Helm-чарты?+

Да, если они хранятся как OCI-артефакты. crane copy копирует их так же, как образы. В h3llo.cloud чарты публикуются командой helm push в адрес реестра.

Что делать с кластером Kubernetes в Yandex Cloud?+

Кластер может скачивать образы из cr.h3llo.cloud по логину только для чтения: создайте секрет docker-registry и замените адрес образов в манифестах. Если кластер тоже переезжает, в Managed Kubernetes h3llo.cloud реестр подключается из панели.

Кто поможет с переездом?+

Напишите на world@h3llo.cloud: сколько образов и реестров, какой CI и где работают кластеры. Инженер ответит и поможет с планом переноса.

Начать перенос

Создать реестрДокументация реестраПомочь с переездом

попробуй h3llo.cloud прямо сейчас

Пробный период для разработчиков, гранты для стартапов и пилоты для компаний — по заявке

Логотип

Строим облачный гиперскейлер на максималках

Юридическая информация

  • Лицензионное соглашение
  • Оферта для физических лиц
  • Оферта для юридических лиц
  • Правила допустимого использования
  • Условия пробного периода
  • Политика обработки персональных данных
  • Политика использования файлов Cookie
  • Сведения об ИТ-деятельности
  • Тарифы
  • Соглашение об уровне обслуживания

Рекуррентные платежи

  • Автопополнение баланса
  • Оферта рекуррентных платежей (автопополнения)
  • Соглашение о хранении учётных данных карты

Компания

  • О компании
  • Контакты
  • Продукты
  • Облачные серверы
  • Managed Kubernetes
  • Базы данных
  • S3-хранилище
  • Container Registry
  • Сети и IP
  • Переезд с Yandex CR
  • Цены и калькулятор
  • Гранты
  • Блог
  • Журнал изменений

Поддержка

  • support@h3llo.cloud
  • world@h3llo.cloud
  • +7 (495) 137-71-33
  • Отменить автопополнение (требуется авторизация)
  • Документация
  • Статус сервисов

h3llo.cloud © 2026 Все права защищены

В реестре хостингов РКН