Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Истории успеха
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Доступны в регионе
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • ИИ для бизнеса
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Партнёрская программа
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Истории успеха
  • Документация
  • Блог
Проект Яндекса
© 2025 ТОО «Облачные Сервисы Казахстан»
Yandex Serverless Containers
  • Сопоставление с другими сервисами Yandex Cloud
    • Все инструкции
    • Получение IAM-токена сервисного аккаунта с помощью контейнера
      • Вызвать контейнер
      • Вызвать контейнер асинхронно
      • Получить ссылку для вызова
      • Аутентифицироваться при вызове приватного контейнера через HTTPS
    • Просмотр операций с ресурсами сервиса
  • Управление доступом
  • Инструменты
  • Правила тарификации
  • Справочник Terraform
  • Метрики Monitoring
  • Аудитные логи Audit Trails
  • Публичные материалы
  • История изменений
  • Вопросы и ответы

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

  • Настройте асинхронный вызов
  • Вызовите контейнер
  • См. также
  1. Пошаговые инструкции
  2. Вызов контейнера
  3. Вызвать контейнер асинхронно

Вызвать контейнер асинхронно

Статья создана
Yandex Cloud
Улучшена
Обновлена 9 сентября 2025 г.
  • Настройте асинхронный вызов
  • Вызовите контейнер
  • См. также

Примечание

Функциональность находится на стадии Preview.

Настройте асинхронный вызовНастройте асинхронный вызов

Консоль управления
CLI
Terraform
API
  1. В консоли управления перейдите в каталог, в котором находится контейнер.

  2. Выберите сервис Serverless Containers.

  3. Выберите контейнер, ревизию которого хотите создать.

  4. Перейдите на вкладку Редактор.

  5. В блоке Асинхронный вызов:

    1. Включите асинхронный вызов.
    2. Укажите сервисный аккаунт для асинхронного вызова, у которого есть роль serverless-containers.containerInvoker.
  6. Нажмите Создать ревизию.

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

По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.

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

yc serverless container revision deploy \
  --container-name <имя_контейнера> \
  --image <URL_Docker-образа> \
  --service-account-id <идентификатор_сервисного_аккаунта> \
  --async-service-account-id <идентификатор_сервисного_аккаунта_для_асинхронного_вызова>

Где:

  • --service-account-id — идентификатор сервисного аккаунта, у которого есть роль serverless-containers.editor или выше.
  • --async-service-account-id — идентификатор сервисного аккаунта для асинхронного вызова, у которого есть роль serverless-containers.containerInvoker.

Результат:

done (6s)
id: bba1r76l8f73********
container_id: bbado1g2mtqj********
created_at: "2025-09-08T12:03:32.797Z"
image:
  image_url: cr.yandex/crpmfvcgnl26********/ubuntu:hello
  image_digest: sha256:96ab2d89a82fcfc63e24b9ef26de8b3b11ed1043cec41d4359a8de8b********
resources:
  memory: "134217728"
  cores: "1"
  core_fraction: "100"
execution_timeout: 3s
concurrency: "1"
service_account_id: ajelprpohp7r********
status: ACTIVE
log_options:
  folder_id: b1g681qpemb4********
runtime:
  http: {}
async_invocation_config:
  service_account_id: ajeaim70pe1u********

Terraform позволяет быстро создать облачную инфраструктуру в Yandex Cloud и управлять ею с помощью файлов конфигураций. В файлах конфигураций хранится описание инфраструктуры на языке HCL (HashiCorp Configuration Language). При изменении файлов конфигураций Terraform автоматически определяет, какая часть вашей конфигурации уже развернута, что следует добавить или удалить.

Terraform распространяется под лицензией Business Source License, а провайдер Yandex Cloud для Terraform — под лицензией MPL-2.0.

Подробную информацию о ресурсах провайдера смотрите в документации на сайте Terraform или в зеркале.

Если у вас еще нет Terraform, установите его и настройте провайдер Yandex Cloud.

Чтобы настроить асинхронный вызов:

  1. Откройте файл конфигурации Terraform и добавьте к описанию контейнера блок async_invocation:

    resource "yandex_serverless_container" "test-container" {
      name               = "<имя_контейнера>"
      memory             = "<объем_RAM>"
      execution_timeout  = "<максимальное_время_выполнения>"
      service_account_id = "<идентификатор_сервисного_аккаунта>"
    
      image {
        url = <путь_к_образу_контейнера>
      }
    
      async_invocation {
        service_account_id = "<идентификатор_сервисного_аккаунта>"
      }
    }
    

    Где:

    • async_invocation — параметры асинхронного вызова:

      • service_account_id — сервисный аккаунт, у которого есть роль serverless-containers.containerInvoker.

    Более подробную информацию о параметрах ресурса yandex_serverless_container см. в документации провайдера.

  2. Примените изменения:

    1. В терминале перейдите в папку, где вы отредактировали конфигурационный файл.

    2. Проверьте корректность конфигурационного файла с помощью команды:

      terraform validate
      

      Если конфигурация является корректной, появится сообщение:

      Success! The configuration is valid.
      
    3. Выполните команду:

      terraform plan
      

      В терминале будет выведен список ресурсов с параметрами. На этом этапе изменения не будут внесены. Если в конфигурации есть ошибки, Terraform на них укажет.

    4. Примените изменения конфигурации:

      terraform apply
      
    5. Подтвердите изменения: введите в терминале слово yes и нажмите Enter.

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

yc serverless serverless-container revision get <идентификатор_ревизии_контейнера>

Чтобы настроить асинхронный вызов, воспользуйтесь методом REST API deployRevision для ресурса Container или вызовом gRPC API ContainerService/DeployRevision.

Вызовите контейнерВызовите контейнер

Вызовите контейнер по HTTP, указав при вызове заголовок X-Ycf-Container-Integration-Type: async.

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

  • Асинхронный вызов контейнера

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

Предыдущая
Вызвать контейнер
Следующая
Получить ссылку для вызова
Проект Яндекса
© 2025 ТОО «Облачные Сервисы Казахстан»