Yandex Cloud
Поиск
Связаться с экспертомПопробовать бесплатно
  • Кейсы
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
  • Marketplace
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Искусственный интеллект
    • Безопасность
    • Инструменты DevOps
    • Бессерверные вычисления
    • Управление ресурсами
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Калькулятор цен
    • Тарифы
    • Акции и free tier
  • Кейсы
  • Документация
  • Блог
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Проект Яндекса
© 2026 ООО «Яндекс.Облако»
Yandex Cloud Registry
  • Начало работы
    • Все инструкции
        • Настроить PyPI
        • Создать Python-пакет
        • Загрузить Python-пакет в реестр
        • Скачать Python-пакет из реестра
        • Удалить Python-пакет из реестра
        • Примеры работы с PyPI-реестрами
    • Создание политики жизненного цикла
  • Управление доступом
  • Правила тарификации
  • Справочник Terraform
  • Аудитные логи Audit Trails
  1. Пошаговые инструкции
  2. Управление артефактами
  3. Python-артефакт
  4. Загрузить Python-пакет в реестр

Загрузить Python-пакет в локальный реестр Cloud Registry

Статья создана
Yandex Cloud
Обновлена 14 мая 2026 г.

Инструкция описывает, как загрузить Python-пакет в локальный реестр.

Для загрузки Python-пакета в реестр необходима роль cloud-registry.artifacts.pusher или выше.

pip + twine
Poetry
uv
  1. Если у вас еще нет собранного пакета, создайте его.

  2. Загрузите пакет:

    export LOCAL_REG_ID="<идентификатор_реестра>"
    export IAM_TOKEN="<IAM-токен>"
    
    twine upload \
    --repository-url "https://registry.yandexcloud.net/pypi/$LOCAL_REG_ID/legacy/" \
    --username iam \
    --password "$IAM_TOKEN" \
    dist/*
    

    Или настройте аутентификацию с помощью файла ~/.pypirc:

    [distutils]
    index-servers = cloud-registry
    
    [cloud-registry]
    repository = https://registry.yandexcloud.net/pypi/<идентификатор_реестра>/legacy/
    username = iam
    password = <IAM-токен>
    

    Где:

    • <идентификатор_реестра> — идентификатор вашего локального реестра.
    • username — тип токена: iam, oauth или api_key.
    • password — значение соответствующего токена.
    python3 -m twine upload --repository cloud-registry dist/*
    

    Результат:

    Uploading distributions to https://registry.yandexcloud.net/pypi/e5o6a2blpkb6********/legacy/
    Uploading my_package-0.0.1-py3-none-any.whl
    100% ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.5/4.5 kB • 00:00 • ?
    Uploading my_package-0.0.1.tar.gz
    100% ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3.8/3.8 kB • 00:00 • ?
    
  1. Если у вас еще нет собранного пакета, создайте его.

  2. Настройте репозиторий для публикации:

    poetry config repositories.cloud-registry https://registry.yandexcloud.net/pypi/<идентификатор_реестра>/legacy/
    
  3. Настройте аутентификацию:

    poetry config http-basic.cloud-registry iam "$(yc iam create-token)"
    

    Где:

    • iam — тип токена. Вместо iam можно использовать oauth или api_key.
    • <идентификатор_реестра> — идентификатор вашего локального реестра.
  4. Загрузите пакет в реестр:

    poetry publish -r cloud-registry
    

    Результат:

    Publishing my_package (0.0.1) to cloud-registry
     - Uploading my_package-0.0.1-py3-none-any.whl 100%
     - Uploading my_package-0.0.1.tar.gz 100%
    
  1. Если у вас еще нет собранного пакета, создайте его.

  2. Загрузите пакет:

    export LOCAL_REG_ID="<идентификатор_реестра>"
    export IAM_TOKEN="<IAM-токен>"
    
    uv publish \
      --publish-url "https://registry.yandexcloud.net/pypi/$LOCAL_REG_ID/legacy/" \
      --username iam \
      --password "$IAM_TOKEN" \
      dist/*
    

    Или cоздайте файл uv.toml в корне проекта:

    [publish]
    url = "https://registry.yandexcloud.net/pypi/<идентификатор_реестра>/legacy/"
    username = "iam"
    password = "<IAM-токен>"
    

    Где:

    • <идентификатор_реестра> — идентификатор вашего локального реестра.
    • username — тип токена: iam, oauth или api_key.
    • password — значение соответствующего токена.
    uv publish
    

    Результат:

    Uploading my_package-0.0.1-py3-none-any.whl (4.5 KB)
    Uploading my_package-0.0.1.tar.gz (3.8 KB)
    

См. такжеСм. также

  • Создать Python-пакет
  • Скачать Python-пакет из реестра Cloud Registry
  • Примеры работы с PyPI-реестрами

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

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