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

Смонтировать бакеты в контейнер

Статья создана
Yandex Cloud
Улучшена
Обновлена 21 апреля 2025 г.

Вы можете монтировать в контейнер бакеты Yandex Object Storage. При монтировании бакета создается новая ревизия контейнера.

Чтобы смонтировать бакеты в контейнер:

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

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

  3. Выберите контейнер.

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

  5. В блоке Настройки выберите или создайте новый сервисный аккаунт с ролью:

    • storage.viewer, чтобы только читать данные из смонтированного бакета.
    • storage.uploader, чтобы читать данные из смонтированного бакета и записывать их в него.
  6. В блоке Смонтированные бакеты:

    1. Нажмите Добавить бакет.

    2. Укажите в поле:

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

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

      • Бакет — бакет, который вы хотите смонтировать. При необходимости создайте новый бакет.

      • Папка — папку в бакете, которая будет смонтирована в контейнер. Если поле пустое, смонтируется весь бакет.

    3. Чтобы запретить запись в бакет, включите опцию Только чтение. Если опция включена, данные из смонтированного бакета будут доступны только для чтения.

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

  7. Нажмите кнопку Создать ревизию.

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

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

Выполните команду:

yc serverless container revision deploy \
  --container-name <имя_контейнера> \
  --image <URL_Docker-образа> \
  --memory <объем_RAM> \
  --execution-timeout <максимальное_время_выполнения> \
  --service-account-id <идентификатор_сервисного_аккаунта> \
  --command '<команда_1>','<команда_2>' \
  --args '<ключ_1=значение_1>','<ключ_2=значение_2>' \
  --mount type=object-storage,mount-point=<путь_монтирования>,bucket=<имя_бакета>,prefix=<имя_папки>,mode=<режим_монтирования>

Где:

  • --container-name — имя контейнера.

  • --image — URL Docker-образа, из которого вы создаете ревизию контейнера, в формате: cr.yandex/<идентификатор_реестра>/<имя_Docker-образа>:<тег>.

  • --memory — необходимый объем RAM.

  • --execution-timeout — максимальное время выполнения контейнера до таймаута.

  • --service-account-id — идентификатор сервисного аккаунта. Для чтения данных из бакета сервисному аккаунту необходима роль storage.viewer, для чтения и записи — роль storage.uploader.

  • --command — команды, которые контейнер выполнит при запуске. Указываются через запятую. Соответствует инструкции ENTRYPOINT в Dockerfile.

  • --args — аргументы, соответствует инструкции CMD в Dockerfile. Указываются в формате ключ = значение через запятую. Если не указано, будет использоваться значение CMD по умолчанию из Docker-образа.

  • --mount — параметры монтирования бакета Object Storage:

    • type — тип монтируемого хранилища. Для бакета значение всегда object-storage.
    • mount-point — абсолютный путь монтирования. Директория, к которой смонтируется бакет, будет доступна по заданному пути.
    • bucket — имя бакета.
    • prefix — папка в бакете, которая будет смонтирована в контейнер. Если поле не задано или пустое, смонтируется весь бакет.
    • mode — режим монтирования бакета: ro — только чтение, rw — чтение и запись.

    Чтобы смонтировать в контейнер одновременно несколько бакетов, задайте параметр --mount необходимое количество раз.

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

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

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

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

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

    resource "yandex_serverless_container" "test-container" {
      ...
    
      mounts {
        mount_point_path = "<точка_монтирования>"
        mode             = "<режим_монтирования>"
        object_storage {
          bucket = "<имя_бакета>"
          prefix = "<имя_папки>"
        }
      }
    }
    

    Где:

    • mounts — параметры монтирования бакета Object Storage:

      • mount_point_path — абсолютный путь монтирования. Директория, к которой смонтируется бакет, будет доступна по указанному пути.
      • mode — режим монтирования бакета: ro — только чтение, rw — чтение и запись.
      • object_storage — параметры бакета:
        • bucket — имя бакета.
        • prefix — папка в бакете, которая будет смонтирована в контейнер. Если поле пустое, смонтируется весь бакет.

      Чтобы смонтировать в контейнер одновременно несколько бакетов, задайте блок mounts необходимое количество раз.

    Более подробную информацию о параметрах ресурса 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 container revision get <идентификатор_ревизии_контейнера>

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

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

  • Монтирование внешних ресурсов на файловую систему контейнера
  • Монтирование внешних ресурсов на файловую систему функции

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

Предыдущая
Передать секреты Yandex Lockbox
Следующая
Смонтировать эфемерный диск
Проект Яндекса
© 2025 ООО «Яндекс.Облако»