Pode usar o Cloud Storage para armazenar e publicar ficheiros, como filmes, imagens ou outro conteúdo estático.
Este documento descreve como usar as bibliotecas de cliente da nuvem para o Cloud Storage na sua app para armazenar e obter dados do Cloud Storage.
Antes de começar
- Siga as instruções em Configurar o ambiente de desenvolvimento para configurar o ambiente e o projeto, e para compreender como as apps estão estruturadas no App Engine. Anote e guarde o ID do projeto, porque vai precisar dele para executar a aplicação de exemplo descrita neste documento.
Certifique-se de que cria um contentor do Cloud Storage para a sua aplicação invocando o seguinte comando:
gcloud storage buckets create gs://YOUR_BUCKET_NAMETorne o contentor publicamente legível para que possa publicar ficheiros:
gcloud storage buckets add-iam-policy-binding gs://<var>YOUR_BUCKET_NAME</var> --member=allUsers --role=roles/storage.objectViewer
Transfira o exemplo
Go
Para clonar o repositório:
git clone https://github.com/GoogleCloudPlatform/golang-samples.git
cd golang-samples/appengine_flexible/storage
Java
Para clonar o repositório:
git clone https://github.com/GoogleCloudPlatform/java-docs-samples
cd java-docs-samples/flexible/java-17/cloudstorage
Node.js
Para clonar o repositório:
git clone https://github.com/GoogleCloudPlatform/nodejs-docs-samples/
cd nodejs-docs-samples/appengine/storage/flexible
PHP
Para clonar o repositório:
git clone https://github.com/GoogleCloudPlatform/php-docs-samples
cd php-docs-samples/appengine/flexible/storage
Python
Para clonar o repositório:
git clone https://github.com/GoogleCloudPlatform/python-docs-samples
cd python-docs-samples/appengine/flexible/storage
Ruby
Para clonar o repositório:
git clone https://github.com/GoogleCloudPlatform/ruby-docs-samples
cd ruby-docs-samples/appengine/flexible/storage/
.NET
Transfira a app de exemplo e extraia-a.
Se estiver a usar a linha de comandos, navegue para o seguinte diretório da app:
dotnet-docs-samples\appengine\flexible\CloudStorage\CloudStorage.Sample
Para executar a sua aplicação localmente, configure uma conta de serviço e transfira as credenciais:
Abra a lista de credenciais na Google Cloud consola.
Clique em Criar credenciais.
Selecione Chave da conta de serviço.
É apresentada uma janela Criar chave de conta de serviço.
Clique na lista Conta de serviço e selecione Conta de serviço predefinida do Compute Engine.
Selecione JSON para o Tipo de chave.
Clique em Criar.
É apresentada uma janela Nova chave privada e a chave privada para o é transferida automaticamente.
Clique em Fechar.
Edite a configuração do projeto e instale dependências
Go
Em app.yaml, defina GCLOUD_STORAGE_BUCKET. Este valor é o nome do contentor do Cloud Storage que criou anteriormente.
Java
Em app.yaml, defina o BUCKET_NAME
para o Cloud Storage que criou anteriormente para o seu projeto.
Em pom.xml, defina com.google.cloud como uma dependência e especifique google-cloud-storage como o artifactID dessa dependência. Isto fornece as funções para usar o armazenamento na nuvem.
Node.js
Em app.yaml, adicione o ID do projeto ao valor do ambiente GOOGLE_CLOUD_PROJECT. Em seguida, defina o valor do ambiente GCLOUD_STORAGE_BUCKET para o nome do contentor do Cloud Storage que criou anteriormente.
Em package.json, adicione @google-cloud/storage como uma dependência, que
fornece as funções para usar o Cloud Storage.
Consulte o README.md ficheiro
para ver instruções sobre a execução e o teste localmente.
PHP
Em app.yaml, defina CLOUD_STORAGE_BUCKET; este valor é o nome do contentor do Cloud Storage que criou anteriormente.
Em composer.json, repare que tem de incluir a biblioteca do cliente do Google Cloud, porque esta fornece funções do Cloud Storage.
Python
Em app.yaml, defina GOOGLE_STORAGE_BUCKET; este valor é o nome do contentor do Cloud Storage que criou anteriormente.
Em requirements.txt, repare que tem de incluir a biblioteca google-cloud-storage, porque esta fornece funções do Cloud Storage.
Ruby
Em app.yaml, defina o GCLOUD_STORAGE_BUCKET
para o Cloud Storage que criou anteriormente para o seu projeto.
Tenha em atenção que tem de incluir a biblioteca gcloud em Gemfile para usar as funções do Cloud Storage.
.NET
No ficheiro app.yaml , defina o TEST_GOOGLE_BUCKET_NAME para o Cloud Storage que criou anteriormente para o seu projeto.
env_variables:
TEST_GOOGLE_BUCKET_NAME: [your-bucket-name]
Código da aplicação
Go
A aplicação de exemplo apresenta uma página Web que pede ao utilizador para fornecer um ficheiro a ser armazenado no Cloud Storage. Quando o utilizador seleciona um ficheiro e clica em enviar, o controlador de carregamento escreve o ficheiro no contentor do Cloud Storage através da função NewWriter do Cloud Storage.
Tenha em atenção que, para obter este ficheiro do Cloud Storage, tem de especificar o nome do contentor e o nome do ficheiro. Deve armazenar estes valores na sua app para utilização futura.
Java
A aplicação de exemplo apresenta uma página Web que pede ao utilizador para fornecer um ficheiro
a ser armazenado no Cloud Storage. Quando o utilizador seleciona um ficheiro e clica em enviar, o controlador de pedidos doPost escreve o ficheiro no contentor do Cloud Storage através de Storage.create
Tenha em atenção que, para obter este ficheiro do Cloud Storage, tem de especificar o nome do contentor e o nome do ficheiro. Deve armazenar estes valores na sua app para utilização futura.
Node.js
A aplicação de exemplo apresenta uma página Web que pede ao utilizador para fornecer um ficheiro a ser armazenado no Cloud Storage. Quando o utilizador seleciona um ficheiro e clica em enviar, o controlador de carregamento carrega o conteúdo do ficheiro num objeto binário grande (blob) e escreve-o no Cloud Storage.
Tenha em atenção que, após o carregamento do ficheiro para o Cloud Storage, é devolvido o URL público deste ficheiro, que pode usar para apresentar o ficheiro diretamente a partir do Cloud Storage. Deve armazenar este valor na sua app para utilização futura.
PHP
A aplicação de exemplo apresenta uma página Web que pede ao utilizador para fornecer um ficheiro a ser armazenado no Cloud Storage. Quando o utilizador seleciona um ficheiro e clica em enviar, o controlador de carregamento carrega o conteúdo do ficheiro num objeto binário grande (blob) e escreve-o no Cloud Storage.
Tenha em atenção que, após o carregamento do ficheiro para o Cloud Storage, é devolvido o URL público deste ficheiro, que pode usar para apresentar o ficheiro diretamente a partir do Cloud Storage. Deve armazenar este valor na sua app para utilização futura.
Python
A aplicação de exemplo apresenta uma página Web que pede ao utilizador para fornecer um ficheiro a ser armazenado no Cloud Storage. Quando o utilizador seleciona um ficheiro e clica em enviar, o controlador de carregamento carrega o conteúdo do ficheiro num blob do Cloud Storage e escreve-o no contentor do Cloud Storage.
Tenha em atenção que, após o carregamento do ficheiro para o Cloud Storage, é devolvido o URL público deste ficheiro, que pode usar para apresentar o ficheiro diretamente a partir do Cloud Storage. Deve armazenar este valor na sua app para utilização futura.
Ruby
A aplicação de exemplo apresenta uma página Web que pede ao utilizador para fornecer um ficheiro a ser armazenado no Cloud Storage. Quando o utilizador seleciona um ficheiro e clica em enviar, o controlador de carregamento carrega o conteúdo do ficheiro num objeto binário grande (blob) e escreve-o no Cloud Storage.
Tenha em atenção que, após o carregamento do ficheiro para o Cloud Storage, é devolvido o URL público deste ficheiro, que pode usar para apresentar o ficheiro diretamente a partir do Cloud Storage. Deve armazenar este valor na sua app para utilização futura.
.NET
A aplicação de exemplo apresenta uma página Web que pede ao utilizador para fornecer um ficheiro a ser armazenado no Cloud Storage. Quando o utilizador seleciona um ficheiro e clica em enviar, o controlador de carregamento carrega o conteúdo do ficheiro num objeto binário grande (blob) e escreve-o no Cloud Storage.
Tenha em atenção que, após o carregamento do ficheiro para o Cloud Storage, é devolvido o URL público deste ficheiro, que pode usar para apresentar o ficheiro diretamente a partir do Cloud Storage. Deve armazenar este valor na sua app para utilização futura.
Para obter mais informações
Para obter informações completas sobre o Cloud Storage, consulte a documentação do Cloud Storage.