Руководство по настройке 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:
- Зарегистрируйтесь на backblaze.com
- Перейдите в Buckets → Create a Bucket
- Задайте имя (например,
my-music) и установите Private - Запишите Endpoint и Region из деталей bucket
AWS S3:
- Откройте консоль S3
- Нажмите Create bucket
- Выберите ближайший регион (например,
eu-central-1) - Оставьте включённым «Блокировать весь публичный доступ»
Cloudflare R2:
- Войдите в Cloudflare Dashboard
- Перейдите в R2 Object Storage → Create bucket
- Запишите Account ID из URL панели управления
Google Cloud Storage:
- Откройте консоль Cloud Storage
- Нажмите Create bucket
- Выберите ближайший регион (например,
europe-north1) - Выберите класс хранения Standard для часто используемых медиа
- Оставьте включённым «Применить предотвращение публичного доступа»
Шаг 2: Создайте ключи доступа
Для подключения нужны Access Key ID и Secret Access Key:
Backblaze B2:
- Перейдите в Application Keys → Add a New Application Key
- Задайте имя, выберите bucket и укажите Read Only
- Сохраните keyID (Access Key) и applicationKey (Secret Key)
AWS S3:
- Перейдите в IAM → Users → Create User
- Прикрепите политику AmazonS3ReadOnlyAccess
- Создайте Access Key в Security Credentials
Cloudflare R2:
- Перейдите в R2 → Manage R2 API Tokens
- Создайте токен с разрешением Object Read для вашего bucket
Google Cloud Storage:
- Перейдите в Cloud Storage → Settings → Interoperability
- Нажмите Create a key for a service account или используйте аккаунт по умолчанию
- Будут сгенерированы HMAC Access Key и Secret Key, совместимые с S3
- Для доступа только на чтение назначьте сервисному аккаунту роль Storage Object Viewer
Шаг 3: Загрузите медиафайлы
Загрузите музыкальные или видеофайлы в bucket. Можно организовать их по папкам:
my-music/
Rock/
song1.mp3
song2.flac
Jazz/
track1.m4a
Podcasts/
episode1.mp3Используйте веб-консоль провайдера, CLI-инструмент или приложения вроде Cyberduck или rclone.
Шаг 4: Подключитесь в Cloudist
- Откройте Cloudist Play или Cloudist Watch
- Перейдите в Аккаунты → нажмите кнопку +
- Выберите S3 Storage
- Выберите пресет провайдера из выпадающего списка (Backblaze B2, AWS S3, Cloudflare R2, Wasabi или Custom)
- Поля Endpoint и Region заполнятся автоматически
- Введите Access Key и Secret Key
- Введите имя Bucket
- Нажмите 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 хранилище сегодня:
- Cloudist Play (музыка): App Store · Google Play · Web
- Cloudist Watch (видео): App Store · Google Play · Web