Yandex Cloud
Поиск
Связаться с экспертомПопробовать бесплатно
  • Кейсы
  • Документация
  • Блог
  • Все сервисы
    • Cloud Interconnect
    • Cloud Backup
    • Compute Cloud
    • Object Storage
    • Managed Service for Kubernetes®
    • Managed Service for PostgreSQL
    • Managed Service for ClickHouse®
    • Monium
    • Cloud CDN
    • Network Load Balancer
    • Virtual Private Cloud
    • Cloud DNS
    • Application Load Balancer
    • Yandex Cloud Router
    • Managed Service for MySQL®
    • Managed Service for Valkey™
    • Managed Service for Apache Spark™
    • Managed Service for OpenSearch
    • Managed Service for Apache Kafka®
    • Data Transfer
    • Yandex MPP Analytics Engine for PostgreSQL
    • Managed Service for YDB
    • SpeechKit
    • Yandex Identity Hub
    • Key Management Service
    • Certificate Manager
    • Yandex Lockbox
    • Audit Trails
    • Container Registry
    • Managed Service for Prometheus®
    • Message Queue
    • Identity and Access Management
    • Yandex Cloud Console
    • Resource Manager
    • Yandex Cloud Billing
    • Cloud Apps
    • Yandex AI Studio
    • Yandex BareMetal
    • Smart Web Security
    • Security Deck
    • Yandex Cloud Video
    • Stackland
    • Yandex Managed Service for Apache Airflow®
    • Data Processing
    • Yandex MetaData Hub
    • Yandex WebSQL
    • DataLens
    • Yandex Search API
    • SpeechSense
    • DataSphere
    • Vision OCR
    • Translate
    • Cloud Registry
    • SmartCaptcha
    • Cloud Desktop
    • Yandex SIEM
    • SourceCraft Code Assistant
    • Managed Service for GitLab
    • Cloud Functions
    • API Gateway
    • Yandex Cloud Postbox
    • Serverless Integrations
    • IoT Core
    • Serverless Containers
    • Cloud Notification Service
    • Yandex Query
  • Статус работы сервисов
  • Marketplace
    • Доступны в регионе
    • Инфраструктура и сеть
    • Платформа данных
    • Искусственный интеллект
    • Безопасность
    • Инструменты DevOps
    • Бессерверные вычисления
    • Управление ресурсами
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Партнёрская программа
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Калькулятор цен
    • Тарифы
    • Акции и free tier
  • Кейсы
  • Документация
  • Блог
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Проект Яндекса
© 2026 ТОО «Облачные Сервисы Казахстан»
Yandex Container Registry
KZ
  • Начало работы
  • Yandex Container Solution
    • Все руководства
    • Миграция в Yandex Cloud Registry
    • Подпись и проверка Docker-образов в Managed Service for Kubernetes
    • Сканирование уязвимостей при непрерывном развертывании приложений Managed Service for Kubernetes с помощью GitLab
    • Непрерывное развертывание контейнеризованных приложений с помощью GitLab
    • Построение пайплайна CI/CD в GitLab с использованием serverless-продуктов
    • Хранение Docker-образов из проектов Yandex Managed Service for GitLab
    • Подключение к Container Registry из VPC
    • Настройка отказоустойчивой архитектуры в Yandex Cloud
    • Запуск контейнерного приложения в Yandex Serverless Containers
    • Развертывание gRPC-сервиса на основе Docker-образа
    • Развертывание сервиса в DataSphere на основе Docker-образа
    • Развертывание сервиса в DataSphere на основе Docker-образа с FastAPI
    • Настройка подключения к Managed Service for PostgreSQL из контейнера Serverless Containers
    • Интеграция с Container Registry
  • Управление доступом
  • Правила тарификации
  • Справочник Terraform
  • Метрики Monitoring
  • Аудитные логи Audit Trails
  • Решение проблем
  • Вопросы и ответы
  • Обучающие курсы

В этой статье:

  • Перед началом работы
  • Запустите миграцию
  • Управление редиректами при запуске миграции
  • Посмотрите статус миграции
  • Управляйте редиректами после миграции
  • Проверьте Docker pull и push
  • Если миграция завершилась ошибкой
  1. Практические руководства
  2. Миграция в Yandex Cloud Registry

Миграция с Container Registry на Cloud Registry

Статья создана
Yandex Cloud
Обновлена 29 сентября 2026 г.
Открыть в Markdown
  • Перед началом работы
  • Запустите миграцию
    • Управление редиректами при запуске миграции
  • Посмотрите статус миграции
  • Управляйте редиректами после миграции
  • Проверьте Docker pull и push
  • Если миграция завершилась ошибкой

Миграцию можно запустить двумя способами:

  • По каталогу — переносятся все реестры указанного каталога.
  • По облаку — переносятся все реестры во всех каталогах указанного облака.

Миграция запускается одновременно для всех реестров в каталоге или облаке. Запустить ее только для части реестров нельзя. Если в каталоге или облаке есть ненужные реестры, предварительно удалите их.

Идентификаторы реестров и адреса Docker-образов сохраняются, поэтому менять ссылки на Docker-образы после миграции не нужно.

Во время миграции переносятся все метаданные и данные из Container Registry в Cloud Registry:

  • метаданные реестра;
  • настройки прав доступа (права доступа на реестр и репозитории в реестре);
  • политики доступа для IP-адресов;
  • политики жизненного цикла;
  • настройки сканирования;
  • алиасы для реестров.

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

  1. Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.

  2. В зависимости от выбранного способа миграции получите идентификатор каталога или облака и сохраните его в переменную:

    • Для миграции по каталогу — получите идентификатор каталога и сохраните его в переменную FOLDER_ID:

      export FOLDER_ID="<идентификатор_каталога>"
      
    • Для миграции по облаку — получите идентификатор облака и сохраните его в переменную CLOUD_ID:

      export CLOUD_ID="<идентификатор_облака>"
      
  3. Назначьте на каталог или облако (в зависимости от выбранного способа миграции) следующие роли:

    • cloud-registry.registries.migrationRunner — для субъекта (пользователя или сервисного аккаунта), который будет запускать миграцию. Роль включает разрешения на запуск миграции (cloud-registry.registries.startMigration) и просмотр ее статуса (cloud-registry.registries.getMigrationStatus).

      Роль должен назначить владелец или администратор ресурса.

    • cloud-registry.registries.migrationViewer — для субъектов, которым нужно только отслеживать статус миграции.

    • container-registry.images.puller и container-registry.images.pusher — для субъектов, которые будут выполнять проверочные Docker pull и push. Роли миграции не дают доступ к Docker-образам.

    Подробнее о назначении ролей читайте в разделе Назначение роли.

Запустите миграциюЗапустите миграцию

Рекомендуем использовать параметр --async — команда вернет идентификатор операции и не будет ждать ее завершения.

По каталогу
По облаку
yc cloud-registry v1 migration start-folder "$FOLDER_ID" \
  --profile <имя_профиля> \
  --async \
  --format json
yc cloud-registry v1 migration start-cloud "$CLOUD_ID" \
  --profile <имя_профиля> \
  --async \
  --format json

В ответе будет поле id — идентификатор операции.

Важно

Прежде чем запускать команду повторно, проверьте статус уже запущенной операции.

Чтобы получить статус операции, выполните команду:

yc cloud-registry v1 operation get <идентификатор_операции> --profile <имя_профиля>

Миграция завершилась, если завершилась операция. Перенос данных можно отслеживать на дашборде миграции.

Управление редиректами при запуске миграцииУправление редиректами при запуске миграции

По умолчанию после запуска миграции для реестров включаются редиректы: все запросы к cr.yandexcloud.kz перенаправляются в Cloud Registry. Это позволяет продолжать использовать прежний адрес без изменений в инфраструктуре.

Если такое поведение не подходит и вы хотите сразу разделить трафик — запросы к cr.yandexcloud.kz направлять в Container Registry, а запросы к registry.yandexcloud.net — в Cloud Registry, запустите миграцию с параметром --disable-redirects:

По каталогу
По облаку
yc cloud-registry v1 migration start-folder "$FOLDER_ID" \
  --profile <имя_профиля> \
  --disable-redirects \
  --async \
  --format json
yc cloud-registry v1 migration start-cloud "$CLOUD_ID" \
  --profile <имя_профиля> \
  --disable-redirects \
  --async \
  --format json

При отключенных редиректах Container Registry и Cloud Registry работают как две независимые копии данных. В такой конфигурации в своей инфраструктуре сразу обновите ссылки с cr.yandexcloud.kz на registry.yandexcloud.net.

Редиректы можно включить или выключить и позже. Подробнее в разделе Управляйте редиректами после миграции.

Посмотрите статус миграцииПосмотрите статус миграции

Дашборд миграции показывает общий статус, счетчики реестров, репозиториев и тегов, а также объекты с ошибками и объекты, которые еще переносятся.

Чтобы открыть дашборд, выполните команду:

По каталогу
По облаку
yc cloud-registry v1 migration get-folder-migration-status-dashboard "$FOLDER_ID" \
  --profile <имя_профиля>
yc cloud-registry v1 migration get-cloud-migration-status-dashboard "$CLOUD_ID" \
  --profile <имя_профиля>

Значения статусов:

Статус Значение
CREATED Объект добавлен в очередь миграции
SCHEDULED Миграция объекта запланирована
IN_PROGRESS Данные переносятся
COMPLETED Миграция завершена
FAILED Миграция завершилась ошибкой

Миграция завершена успешно, если:

  • общий статус — COMPLETED;
  • failed равен 0 для реестров, репозиториев и тегов;
  • completed равен total.

Поведение запросов Docker pull и push зависит от статуса миграции:

  • CREATED — запросы Docker pull идут в Container Registry. Запросы Docker push могут временно завершаться ошибкой 429 Too Many Requests с заголовком Retry-After — повторите запрос через указанное время.
  • SCHEDULED — все запросы Docker pull и push перенаправляются в Cloud Registry.

Управляйте редиректами после миграцииУправляйте редиректами после миграции

Режим редиректов можно менять уже после запуска миграции: для отдельного реестра, для всех реестров каталога или для всех реестров облака. Используйте флаг --enabled:

  • true — редиректы включены, запросы к cr.yandexcloud.kz идут в Cloud Registry;
  • false — редиректы отключены, запросы к cr.yandexcloud.kz продолжают идти в Container Registry).
Реестр
Каталог
Облако
yc cloud-registry v1 migration toggle-registry-redirects <идентификатор_реестра> \
  --profile <имя_профиля> \
  --enabled=<true_или_false>
yc cloud-registry v1 migration toggle-folder-redirects "$FOLDER_ID" \
  --profile <имя_профиля> \
  --enabled=<true_или_false>
yc cloud-registry v1 migration toggle-cloud-redirects "$CLOUD_ID" \
  --profile <имя_профиля> \
  --enabled=<true_или_false>

Проверьте Docker pull и pushПроверьте Docker pull и push

Если редиректы:

  • включены, вы можете продолжать использовать прежний адрес Container Registry — cr.yandexcloud.kz.
  • отключены, используйте адрес Cloud Registry — registry.yandexcloud.net.

Сохраните идентификатор реестра в переменную REGISTRY_ID:

export REGISTRY_ID="<идентификатор_реестра>"

Сохраните имя репозитория в переменную REPOSITORY_NAME:

export REPOSITORY_NAME="<имя_репозитория>"

Сохраните имя локального Docker-образа в переменную LOCAL_IMAGE:

export LOCAL_IMAGE="<имя_Docker-образа>"

Сохраните тег Docker-образа в переменную TAG:

export TAG="<тег>"

Проверьте, что команды Docker pull и push выполняются:

yc iam create-token --profile <имя_профиля> \
  | docker login --username iam --password-stdin cr.yandexcloud.kz

docker pull \
  "cr.yandexcloud.kz/$REGISTRY_ID/$REPOSITORY_NAME:$TAG"

docker tag "$LOCAL_IMAGE" \
  "cr.yandexcloud.kz/$REGISTRY_ID/migration-check:test"

docker push \
  "cr.yandexcloud.kz/$REGISTRY_ID/migration-check:test"

Хеш скачанного образа должен совпадать с хешем до миграции. Новый тег после выполнения команды Docker push должен отображаться в Cloud Registry.

Если миграция завершилась ошибкойЕсли миграция завершилась ошибкой

Если миграция завершилась ошибкой, обратитесь в техническую поддержку и приложите:

  • идентификатор каталога или облака, для которого запускалась миграция;
  • дашборд миграции в формате JSON;
  • время ошибки и request ID, если он есть в выводе CLI.

Была ли статья полезна?

Предыдущая
Все руководства
Следующая
Обзор
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Проект Яндекса
© 2026 ТОО «Облачные Сервисы Казахстан»