Descubra o armazenamento de objetos com a ferramenta gcloud
Esta página mostra-lhe como realizar tarefas básicas no Cloud Storage através da ferramenta de linhas de comando gcloud.
Os custos incorridos no Cloud Storage baseiam-se nos recursos que usa. Normalmente, este guia de início rápido usa menos de 0,01 USD em recursos do Cloud Storage.
Antes de começar
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
Install the Google Cloud CLI.
-
Se estiver a usar um fornecedor de identidade (IdP) externo, tem primeiro de iniciar sessão na CLI gcloud com a sua identidade federada.
-
Para inicializar a CLI gcloud, execute o seguinte comando:
gcloud init
-
Create or select a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
Verify that billing is enabled for your Google Cloud project.
-
Grant roles to your user account. Run the following command once for each of the following IAM roles:
roles/storage.admin
gcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE
Replace the following:
PROJECT_ID
: your project ID.USER_IDENTIFIER
: the identifier for your user account—for example,myemail@example.com
.ROLE
: the IAM role that you grant to your user account.
-
Install the Google Cloud CLI.
-
Se estiver a usar um fornecedor de identidade (IdP) externo, tem primeiro de iniciar sessão na CLI gcloud com a sua identidade federada.
-
Para inicializar a CLI gcloud, execute o seguinte comando:
gcloud init
-
Create or select a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
Verify that billing is enabled for your Google Cloud project.
-
Grant roles to your user account. Run the following command once for each of the following IAM roles:
roles/storage.admin
gcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE
Replace the following:
PROJECT_ID
: your project ID.USER_IDENTIFIER
: the identifier for your user account—for example,myemail@example.com
.ROLE
: the IAM role that you grant to your user account.
- Abra uma janela de terminal.
Use o comando
gcloud storage buckets create
e um nome exclusivo para criar um contentor:gcloud storage buckets create gs://my-awesome-bucket/ --uniform-bucket-level-access
Isto usa um contentor denominado "my-awesome-bucket". Tem de escolher o seu próprio nome de contentor exclusivo a nível global.
Se for bem-sucedido, o comando devolve:
Creating gs://my-awesome-bucket/...
Clique com o botão direito do rato na imagem acima e guarde-a num local do computador, como o ambiente de trabalho.
Use o comando
gcloud storage cp
para copiar a imagem da localização onde a guardou para o contentor que criou:gcloud storage cp Desktop/kitten.png gs://my-awesome-bucket
Se for bem-sucedido, o comando devolve:
Copying file://Desktop/kitten.png [Content-Type=image/png]... Uploading gs://my-awesome-bucket/kitten.png: 0 B/164.3 KiB Uploading gs://my-awesome-bucket/kitten.png: 164.3 KiB/164.3 KiB
Acabou de armazenar um objeto no seu contentor.
Use o comando
gcloud storage cp
para transferir a imagem que armazenou no seu contentor para algum lugar no computador, como o ambiente de trabalho:gcloud storage cp gs://my-awesome-bucket/kitten.png Desktop/kitten2.png
Se for bem-sucedido, o comando devolve:
Copying gs://my-awesome-bucket/kitten.png... Downloading file://Desktop/kitten2.png: 0 B/164.3 KiB Downloading file://Desktop/kitten2.png: 164.3 KiB/164.3 KiB
Acabou de transferir algo do seu contentor.
Use o comando
gcloud storage cp
para criar uma pasta e copiar a imagem para a mesma:gcloud storage cp gs://my-awesome-bucket/kitten.png gs://my-awesome-bucket/just-a-folder/kitten3.png
Se for bem-sucedido, o comando devolve:
Copying gs://my-awesome-bucket/kitten.png [Content-Type=image/png]... Copying ...my-awesome-bucket/just-a-folder/kitten3.png: 164.3 KiB/164.3 KiB
Acabou de copiar a imagem para uma nova pasta no seu contentor.
Use o comando
gcloud storage ls
para apresentar o conteúdo no nível superior do seu contentor:gcloud storage ls gs://my-awesome-bucket
Se for bem-sucedido, o comando devolve uma mensagem semelhante à seguinte:
gs://my-awesome-bucket/kitten.png gs://my-awesome-bucket/just-a-folder/
Acabou de ver o conteúdo ao nível superior do seu contentor.
Use o comando
gcloud storage ls
com a flag--long
para obter alguns detalhes sobre uma das suas imagens:gcloud storage ls gs://my-awesome-bucket/kitten.png --long
Se for bem-sucedido, o comando devolve uma mensagem semelhante à seguinte:
2638 2016-02-26T23:05:14Z gs://my-awesome-bucket/kitten.png TOTAL: 1 objects, 168243.2 bytes (164.3 KiB)
Acabou de obter informações sobre o tamanho e a data de criação da imagem.
Use o comando
gcloud storage buckets add-iam-policy-binding
para conceder a todos os utilizadores autorização para ler as imagens armazenadas no seu contentor:gcloud storage buckets add-iam-policy-binding gs://my-awesome-bucket --member=allUsers --role=roles/storage.objectViewer
O comando é bem-sucedido se a sua resposta contiver o seguinte:
bindings: - members: - allUsers role: roles/storage.objectViewer
Agora, qualquer pessoa pode aceder às suas imagens.
Para remover este acesso, use o comando:
gcloud storage buckets remove-iam-policy-binding gs://my-awesome-bucket --member=allUsers --role=roles/storage.objectViewer
O comando é bem-sucedido se não for devolvido nenhum erro.
Removeu o acesso público às imagens no seu contentor.
Use o comando
gcloud storage buckets add-iam-policy-binding
para conceder a um endereço de email específico autorização para adicionar objetos ao seu contentor:gcloud storage buckets add-iam-policy-binding gs://my-awesome-bucket --member=user:jeffersonloveshiking@gmail.com --role=roles/storage.objectCreator
O comando é bem-sucedido se a sua resposta contiver o seguinte:
bindings: - members: - user:jeffersonloveshiking@gmail.com role: roles/storage.objectCreator
Agora, outra pessoa pode adicionar artigos ao seu recipiente.
Para remover esta autorização, use o comando:
gcloud storage buckets remove-iam-policy-binding gs://my-awesome-bucket --member=user:jeffersonloveshiking@gmail.com --role=roles/storage.objectCreator
O comando é bem-sucedido se não for devolvido nenhum erro.
Removeu o acesso do utilizador a este contentor.
Use o comando
gcloud storage rm
para eliminar uma das suas imagens:gcloud storage rm gs://my-awesome-bucket/kitten.png
Se for bem-sucedido, o comando devolve:
Removing gs://my-awesome-bucket/kitten.png...
Esta cópia da imagem já não está armazenada no Cloud Storage (embora a cópia que fez na pasta
just-a-folder/
ainda exista).- Abra uma janela de terminal (se ainda não estiver aberta).
Use o comando
gcloud storage rm
com a flag--recursive
para eliminar o contentor e tudo o que estiver no respetivo interior:gcloud storage rm gs://my-awesome-bucket --recursive
Se for bem-sucedido, o comando devolve uma mensagem semelhante à seguinte:
Removing gs://my-awesome-bucket/just-a-folder/cloud-storage.logo.png#1456530077282000... Removing gs://my-awesome-bucket/...
O contentor e o respetivo conteúdo são eliminados.
- Siga o guia de início rápido do Cloud Storage através da Google Cloud consola.
- Leia a vista geral do produto Cloud Storage.
- Saiba mais sobre os preços do Cloud Storage.
- Consulte as páginas de referência para comandos da CLI do Google Cloud, como
make bucket (
buckets create
), copy (cp
), list (ls
), add access (buckets add-iam-policy-binding
) e remove (rm
).
Crie um contentor
Os segmentos são os contentores básicos que armazenam os seus dados no Cloud Storage.
Para criar um contentor:
Acabou de criar um contentor onde pode armazenar os seus dados!
Creating gs://my-awesome-bucket/... ServiceException: 409 Bucket my-awesome-bucket already exists.
Tente novamente com um nome de contentor diferente.
Carregue um objeto para o seu contentor
Transfira o objeto do seu contentor
Copie o objeto para uma pasta no contentor
Listar conteúdos de um contentor ou uma pasta
Liste os detalhes de um objeto
Tornar os objetos acessíveis publicamente
Conceda acesso a alguém ao seu contentor
Elimine um objeto
Limpar
Para evitar incorrer em custos na sua Google Cloud conta pelos recursos usados nesta página, elimine o Google Cloud projeto com os recursos.