Como usar o Cloud Storage

Se o aplicativo PHP 7 precisar ler e gravar arquivos durante o ambiente de execução ou exibir arquivos, como filmes, imagens ou outro conteúdo estático, recomendamos o uso de um bucket do Cloud Storage.

Ao criar um aplicativo, o App Engine cria um bucket padrão que fornece gratuitamente os primeiros 5 GB de armazenamento e inclui uma cota gratuita para operações operações de E/S do Cloud Storage. É possível criar outros buckets do Cloud Storage, mas apenas o bucket padrão inclui os primeiros 5 GB de armazenamento gratuito.

Como usar o Cloud Storage com o App Engine

Para usar um bucket do Cloud Storage a partir de um aplicativo do App Engine:

  1. Veja os nomes dos buckets atuais no seu projeto do App Engine. Esses nomes são especificados durante o upload ou download de dados do Cloud Storage.

    É recomendável armazenar os nomes dos buckets do Cloud Storage nas variáveis de ambiente do app, em vez de codificá-los.

  2. No seu aplicativo, declare o Cloud Storage como uma dependência adicionando google/cloud-storage ao arquivo composer.json do seu aplicativo e executando composer install a partir do diretório do aplicativo. Saiba mais sobre como especificar dependências.

  3. Registre Google\Cloud\Storage\StorageClient como o wrapper de stream do aplicativo. Em seguida, use o protocolo gs para ler e gravar arquivos.

    Veja um exemplo de registro e uso do wrapper de stream.

    É possível também usar diretamente a biblioteca de cliente do Google Cloud.

Como usar o bucket padrão

Ao criar um aplicativo, o App Engine cria um bucket padrão que fornece gratuitamente os primeiros 5 GB de armazenamento. O bucket padrão também inclui uma cota gratuita para operações de E/S do Cloud Storage. Consulte Preços, cotas e limites para mais detalhes. Além disso, você será cobrado pelo armazenamento que exceder o limite dos 5 GB.

O nome do bucket padrão está no seguinte formato:

project-id.appspot.com

O App Engine também cria um bucket para armazenamento temporário quando implanta novas versões do aplicativo. Esse bucket, denominado staging.project-id.appspot.com, precisa ser usado somente pelo App Engine. Os aplicativos não podem interagir com esse bucket.

Como configurar permissões de bucket e de objeto

A conta de serviço padrão associada ao seu aplicativo tem todas as permissões necessárias para ler e gravar nos buckets do seu projeto.

Para gerenciar essas permissões, cada aplicativo do App Engine usa uma conta de serviço padrão que dá acesso completo de leitura e gravação aos buckets do Cloud Storage no mesmo projeto do aplicativo. É possível alterar as permissões da conta de serviço padrão, mas o aplicativo poderá perder o acesso se você não atribuir um papel do IAM com as permissões necessárias.

Para informações sobre como permitir que outros usuários, aplicativos ou projetos acessem um bucket e o conteúdo dele, consulte Como configurar permissões de bucket e Como configurar permissões de objeto.

Como usar o Cloud Storage com o servidor de desenvolvimento local

O servidor de desenvolvimento local do App Engine não emula o Cloud Storage. Portanto, todas as solicitações do Cloud Storage precisam ser enviadas pela Internet para um bucket real do Cloud Storage.

Preços, cotas e limites

Não há cobranças de largura de banda associadas às chamadas da biblioteca de cliente para Cloud Storage. No entanto, há cobranças de operações. Além disso, as chamadas são contabilizadas na cota de busca de URL, uma vez que a biblioteca usa o serviço de busca de URL para interagir com o Cloud Storage.

O Cloud Storage é um serviço pago. Você será cobrado de acordo com a tabela de preços desse serviço.