·10 мин read

Руководство по настройке S3: стриминг музыки и видео из Backblaze B2, AWS, Cloudflare R2, Google Cloud Storage

Cloudist теперь поддерживает S3-совместимое облачное хранилище — подключите Backblaze B2, AWS S3, Cloudflare R2, Google Cloud Storage, Wasabi, MinIO или любой S3-совместимый сервис и стримьте музыку и видео прямо из ваших bucket.

Это руководство расскажет всё, что нужно знать о настройке S3 хранилища с Cloudist Play (музыка) и Cloudist Watch (видео).

Что такое S3 Storage?

Amazon S3 (Simple Storage Service) — отраслевой стандарт объектного хранилища. Многие провайдеры предлагают S3-совместимые API, что позволяет использовать один протокол для доступа к хранилищам разных компаний. Это даёт вам:

  • Свободу выбора — выбирайте провайдера под ваш бюджет и потребности
  • Отсутствие привязки к вендору — меняйте провайдера без изменения настроек
  • Экономию — храните большие медиабиблиотеки за копейки за ГБ
  • Самостоятельный хостинг — запустите MinIO на собственном сервере

Поддерживаемые провайдеры

Cloudist работает с любым S3-совместимым хранилищем. Вот самые популярные варианты:

ПровайдерБесплатный планИсходящий трафик (загрузка)Лучше всего для
**Backblaze B2**10 ГБ3x хранилища/месяц бесплатноЛучший бесплатный план
**Cloudflare R2**10 ГБ/месяцБезлимитный (бесплатно!)Нулевые затраты на трафик
**AWS S3**5 ГБ (12 месяцев)100 ГБ/месяц бесплатноКорпоративные пользователи
**Google Cloud Storage**5 ГБ (навсегда бесплатно)$0.045-$0.085/ГБЭкосистема Google
**Wasabi**Нет (мин. $6.99/месяц)ВключёнГорячее хранилище
**MinIO**Самостоятельный хостингНе применимоПолный контроль

Наша рекомендация

Для большинства пользователей Backblaze B2 или Cloudflare R2 предлагают лучшее соотношение цена/качество. B2 даёт 10 ГБ бесплатного хранилища с щедрым бесплатным трафиком, а R2 предоставляет полностью бесплатные загрузки — идеально для стриминга медиа. Если вы уже в экосистеме Google, Google Cloud Storage предлагает бесшовную интеграцию с 5 ГБ навсегда бесплатно.

Пошаговое руководство по настройке

Шаг 1: Создайте S3 Bucket

Сначала создайте bucket у выбранного провайдера:

Backblaze B2:

  1. Зарегистрируйтесь на backblaze.com
  2. Перейдите в BucketsCreate a Bucket
  3. Задайте имя (например, my-music) и установите Private
  4. Запишите Endpoint и Region из деталей bucket

AWS S3:

  1. Откройте консоль S3
  2. Нажмите Create bucket
  3. Выберите ближайший регион (например, eu-central-1)
  4. Оставьте включённым «Блокировать весь публичный доступ»

Cloudflare R2:

  1. Войдите в Cloudflare Dashboard
  2. Перейдите в R2 Object StorageCreate bucket
  3. Запишите Account ID из URL панели управления

Google Cloud Storage:

  1. Откройте консоль Cloud Storage
  2. Нажмите Create bucket
  3. Выберите ближайший регион (например, europe-north1)
  4. Выберите класс хранения Standard для часто используемых медиа
  5. Оставьте включённым «Применить предотвращение публичного доступа»

Шаг 2: Создайте ключи доступа

Для подключения нужны Access Key ID и Secret Access Key:

Backblaze B2:

  1. Перейдите в Application KeysAdd a New Application Key
  2. Задайте имя, выберите bucket и укажите Read Only
  3. Сохраните keyID (Access Key) и applicationKey (Secret Key)

AWS S3:

  1. Перейдите в IAMUsersCreate User
  2. Прикрепите политику AmazonS3ReadOnlyAccess
  3. Создайте Access Key в Security Credentials

Cloudflare R2:

  1. Перейдите в R2Manage R2 API Tokens
  2. Создайте токен с разрешением Object Read для вашего bucket

Google Cloud Storage:

  1. Перейдите в Cloud StorageSettingsInteroperability
  2. Нажмите Create a key for a service account или используйте аккаунт по умолчанию
  3. Будут сгенерированы HMAC Access Key и Secret Key, совместимые с S3
  4. Для доступа только на чтение назначьте сервисному аккаунту роль Storage Object Viewer

Шаг 3: Загрузите медиафайлы

Загрузите музыкальные или видеофайлы в bucket. Можно организовать их по папкам:

my-music/
  Rock/
    song1.mp3
    song2.flac
  Jazz/
    track1.m4a
  Podcasts/
    episode1.mp3

Используйте веб-консоль провайдера, CLI-инструмент или приложения вроде Cyberduck или rclone.

Шаг 4: Подключитесь в Cloudist

  1. Откройте Cloudist Play или Cloudist Watch
  2. Перейдите в Аккаунты → нажмите кнопку +
  3. Выберите S3 Storage
  4. Выберите пресет провайдера из выпадающего списка (Backblaze B2, AWS S3, Cloudflare R2, Wasabi или Custom)
  5. Поля Endpoint и Region заполнятся автоматически
  6. Введите Access Key и Secret Key
  7. Введите имя Bucket
  8. Нажмите Test & Connect

Готово! Cloudist просканирует bucket и добавит все поддерживаемые медиафайлы в библиотеку.

Как работает стриминг

Cloudist использует Pre-signed URL для стриминга медиа. Это означает:

  • При воспроизведении трека Cloudist генерирует временный URL (действителен 1 час), дающий доступ к конкретному файлу
  • Заголовки аутентификации не нужны — URL сам содержит подпись
  • Это работает бесшовно с аудио- и видеоплеерами на всех платформах
  • URL автоматически перегенерируются при истечении срока

Этот подход одновременно безопасный (URL быстро истекают) и эффективный (прокси-сервер не нужен).

Поддерживаемые форматы файлов

Cloudist Play (музыка):

  • MP3, M4A, WAV, FLAC, AAC, WMA, OGG

Cloudist Watch (видео):

  • MP4, MKV, WebM, AVI, MOV, M4V, FLV, WMV, TS, 3GP

Веб-приложение: настройка CORS

Если вы используете веб-приложение (play.fromcloud.ist или watch.fromcloud.ist), вашему bucket нужна настройка CORS для доступа из браузера. Вот политика CORS:

[{
  "AllowedHeaders": ["*"],
  "AllowedMethods": ["GET", "HEAD"],
  "AllowedOrigins": ["https://play.fromcloud.ist", "https://watch.fromcloud.ist"],
  "ExposeHeaders": ["ETag", "Content-Length"],
  "MaxAgeSeconds": 3600
}]

Примечание: CORS нужен только для веб-воспроизведения. Нативные приложения (iOS, Android, macOS) не требуют этого.

Сравнение стоимости

Стоимость хранения и стриминга типичной музыкальной библиотеки (1000 треков, ~8 ГБ) при 100 воспроизведениях в месяц:

ПровайдерЕжемесячная стоимость
**Backblaze B2**$0.00 (бесплатный план)
**Cloudflare R2**$0.00 (бесплатный трафик)
**AWS S3**~$0.18
**Google Cloud Storage**$0.00 (бесплатный план)
**Wasabi**$6.99 (минимум)
**MinIO**Только стоимость сервера

Для видеобиблиотеки (200 видео, ~100 ГБ) при 50 воспроизведениях в месяц:

ПровайдерЕжемесячная стоимость
**Backblaze B2**~$0.50
**Cloudflare R2**~$1.35
**AWS S3**~$4.55
**Google Cloud Storage**~$2.15
**Wasabi**$6.99 (минимум)

Советы и лучшие практики

  • Используйте ключи только для чтения — Cloudist нужно только читать файлы, никогда не записывать. Создавайте ключи с минимальными правами
  • Организуйте папками — используйте чёткую структуру папок. Cloudist сохраняет иерархию для удобной навигации
  • Выбирайте ближайший регион — для более быстрого стриминга выбирайте ближайший регион хранения
  • Backblaze B2 + Cloudflare — при использовании B2 с Cloudflare CDN трафик между ними полностью бесплатный (Bandwidth Alliance)
  • MinIO для самостоятельного хостинга — запустите MinIO на Raspberry Pi или NAS для полностью приватного медиасервера

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

Мои учётные данные куда-то загружаются?

Нет. Ваши ключи доступа S3 хранятся только на устройстве в безопасном локальном хранилище. Они никогда не отправляются на серверы Cloudist и не хранятся в облаке.

Можно подключить несколько S3 аккаунтов?

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

Работает ли офлайн?

Да. Можно скачать треки для офлайн-прослушивания. Скачанные файлы хранятся локально на устройстве.

Что произойдёт, если Pre-signed URL истечёт?

Cloudist автоматически сгенерирует новый URL при необходимости. Вы не заметите прерываний во время воспроизведения.

Начните прямо сейчас

Скачайте Cloudist и подключите S3 хранилище сегодня:

Мы используем cookies для анализа трафика и улучшения вашего опыта. Персональные данные не собираются.