Pular para o conteúdo
Berth

Guarde audiolivros em armazenamento compatível com S3

Atualizado em 27 de outubro de 2026

O Berth pode guardar os livros em qualquer bucket compatível com S3 em vez do disco do servidor. O servidor mantém a biblioteca e decide quem pode ouvir; o áudio em si pode ir do bucket ou de uma CDN direto para os celulares.

Por que object storage

Provedores compatíveis

Qualquer serviço compatível com S3 funciona. O painel web tem predefinições que preenchem o endpoint e a região para: AWS S3, Cloudflare R2, Yandex Cloud, Backblaze B2, Bunny Storage e MinIO. Para o Cloudflare R2 há também um assistente que cria o bucket e as chaves para você.

Conectar um bucket

  1. No console do seu provedor, crie um bucket e uma chave de acesso com permissão de leitura e gravação nele.
  2. Adicione uma regra CORS ao bucket: origem é o seu endereço do Berth, métodos GET, HEAD, PUT, cabeçalhos *. O painel web envia os arquivos do navegador direto para o bucket, então essa regra é obrigatória.
  3. No painel web do Berth, abra as configurações de armazenamento, adicione um armazenamento, escolha “Bucket S3” e selecione uma predefinição ou preencha os campos você mesmo.
  4. Preencha nome, bucket, endpoint (vazio para AWS), região (us-east-1 se vazia), ID da chave de acesso e chave de acesso secreta. Ative os endereços no estilo path para o MinIO; eles são ativados sozinhos para um endereço IP ou localhost.
  5. Clique em “Verificar conexão”: o Berth grava, lê de volta e apaga um pequeno arquivo de teste e verifica o CORS a partir dos endereços do seu servidor.
  6. Torne o armazenamento padrão: livros novos vão para o armazenamento padrão.

As chaves ficam guardadas criptografadas com a chave do servidor secret.key e nunca são mostradas de novo.

Como o áudio chega aos celulares

Sem assinatura, os arquivos atrás de uma CDN abrem por um link que nunca expira. Os nomes deles são hashes SHA-256 e não podem ser adivinhados, mas revogar um dispositivo não fecha os links que ele já tem. A autenticação por token da Bunny CDN faz os links expirarem após 6 horas.

ModoComo funcionaQuando usar
Links diretos (padrão)Os celulares recebem um link assinado para o bucket que dura 15 minutosTira a carga do servidor
Pelo servidorO servidor transmite o arquivo; os links duram 6 horas e param de funcionar na hora quando um dispositivo é revogadoOs celulares não conseguem acessar o bucket
Por uma CDNOs links apontam para uma CDN ou um endereço público do bucketO mais rápido quando o bucket tem uma CDN

Bom saber

Perguntas

O Berth precisa de acesso público ao bucket?

Não. No modo padrão, o bucket continua privado e os celulares recebem links assinados que expiram após 15 minutos.

A verificação diz que o bucket não aceita envios de um navegador. E agora?

Adicione a regra CORS: origem é o endereço do Berth, métodos GET, HEAD, PUT, cabeçalhos *. Depois rode a verificação de novo.