Scopri l'archiviazione di oggetti con lo strumento gcloud

Questa pagina mostra come eseguire attività di base in Cloud Storage utilizzando lo strumento a riga di comando gcloud.

I costi sostenuti in Cloud Storage si basano sulle risorse che utilizzi. Questa guida rapida in genere utilizza risorse Cloud Storage per un valore inferiore a 0,01 $.

Prima di iniziare

  1. 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.
  2. Install the Google Cloud CLI.

  3. If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

  4. To initialize the gcloud CLI, run the following command:

    gcloud init
  5. Create or select a Google Cloud project.

    • 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.

  6. Make sure that billing is enabled for your Google Cloud project.

  7. 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 PROJECT_ID with your project ID.
    • Replace USER_IDENTIFIER with the identifier for your user account. For example, user:myemail@example.com.

    • Replace ROLE with each individual role.
  8. Install the Google Cloud CLI.

  9. If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

  10. To initialize the gcloud CLI, run the following command:

    gcloud init
  11. Create or select a Google Cloud project.

    • 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.

  12. Make sure that billing is enabled for your Google Cloud project.

  13. 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 PROJECT_ID with your project ID.
    • Replace USER_IDENTIFIER with the identifier for your user account. For example, user:myemail@example.com.

    • Replace ROLE with each individual role.

Crea un bucket

I bucket sono i container di base di Cloud Storage in cui vengono archiviati i dati.

Per creare un bucket:

  1. Apri una finestra del terminale.
  2. Utilizza il comando gcloud storage buckets create e un nome univoco per creare un bucket:

    gcloud storage buckets create gs://my-awesome-bucket/ --uniform-bucket-level-access

    Questo utilizza un bucket denominato "my-awesome-bucket". Devi scegliere un nome bucket globalmente univoco.

    In caso di esito positivo, il comando restituisce:

    Creating gs://my-awesome-bucket/...

Il bucket per l'archiviazione dei tuoi dati è stato creato.

Creating gs://my-awesome-bucket/...
ServiceException: 409 Bucket my-awesome-bucket already exists.

Riprova utilizzando un altro nome per il bucket.

carica un oggetto nel bucket

Immagine di un gattino da caricare nel bucket.

  1. Fai clic con il tasto destro del mouse sull'immagine riportata sopra e salvala in una posizione del computer, ad esempio sul desktop.

  2. Utilizza il comando gcloud storage cp per copiare l'immagine dalla posizione in cui l'hai salvata nel bucket che hai creato:

    gcloud storage cp Desktop/kitten.png gs://my-awesome-bucket

    In caso di esito positivo, il comando restituisce:

    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

    L'oggetto è stato archiviato nel bucket.

Scarica l'oggetto dal bucket

  1. Utilizza il comando gcloud storage cp per scaricare l'immagine archiviata nel bucket in una posizione del computer, ad esempio sul desktop:

    gcloud storage cp gs://my-awesome-bucket/kitten.png Desktop/kitten2.png

    In caso di esito positivo, il comando restituisce:

    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

    Hai appena scaricato qualcosa dal tuo bucket.

Copia l'oggetto in una cartella del bucket

  1. Usa il comando gcloud storage cp per creare una cartella in cui copiare l'immagine:

    gcloud storage cp gs://my-awesome-bucket/kitten.png gs://my-awesome-bucket/just-a-folder/kitten3.png

    In caso di esito positivo, il comando restituisce:

    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

    Hai appena copiato l'immagine in una nuova cartella nel tuo bucket.

elenca i contenuti di un bucket o di una cartella

  1. Utilizza il comando gcloud storage ls per elencare i contenuti al livello più alto del bucket:

    gcloud storage ls gs://my-awesome-bucket

    Se l'esito è positivo, il comando restituisce un messaggio simile al seguente:

    gs://my-awesome-bucket/kitten.png
    gs://my-awesome-bucket/just-a-folder/

    Hai appena visto i contenuti al livello più alto del tuo bucket.

elenca i dettagli relativi a un oggetto

  1. Utilizza il comando gcloud storage ls con il flag --long per ottenere alcuni dettagli su una delle tue immagini:

    gcloud storage ls gs://my-awesome-bucket/kitten.png --long

    Se l'esito è positivo, il comando restituisce un messaggio simile al seguente:

    2638  2016-02-26T23:05:14Z  gs://my-awesome-bucket/kitten.png
    TOTAL: 1 objects, 168243.2 bytes (164.3 KiB)

    Hai appena ricevuto informazioni sulle dimensioni dell'immagine e sulla data di creazione.

Rendi gli oggetti pubblicamente accessibili

  1. Utilizza il comando gcloud storage buckets add-iam-policy-binding per concedere a tutti gli utenti l'autorizzazione per leggere le immagini archiviate nel tuo bucket:

    gcloud storage buckets add-iam-policy-binding gs://my-awesome-bucket --member=allUsers --role=roles/storage.objectViewer

    Il comando ha esito positivo se la risposta contiene quanto segue:

    bindings:
      - members:
        - allUsers
        role: roles/storage.objectViewer
    

    Ora chiunque può ottenere le tue immagini.

  2. Per rimuovere questo accesso, utilizza il comando:

    gcloud storage buckets remove-iam-policy-binding gs://my-awesome-bucket --member=allUsers --role=roles/storage.objectViewer

    Il comando ha esito positivo se non viene restituito alcun errore.

    Hai rimosso l'accesso pubblico alle immagini nel tuo bucket.

Concedi a qualcuno l'accesso al tuo bucket

  1. Utilizza il comando gcloud storage buckets add-iam-policy-binding per concedere a un indirizzo email specifico l'autorizzazione per aggiungere oggetti al tuo bucket:

    gcloud storage buckets add-iam-policy-binding gs://my-awesome-bucket --member=user:jeffersonloveshiking@gmail.com --role=roles/storage.objectCreator

    Il comando ha esito positivo se la risposta contiene quanto segue:

    bindings:
      - members:
        - user:jeffersonloveshiking@gmail.com
        role: roles/storage.objectCreator
    

    Ora un'altra persona può aggiungere elementi al tuo bucket.

  2. Per rimuovere questa autorizzazione, utilizza il comando:

    gcloud storage buckets remove-iam-policy-binding gs://my-awesome-bucket --member=user:jeffersonloveshiking@gmail.com --role=roles/storage.objectCreator

    Il comando ha esito positivo se non viene restituito alcun errore.

    Hai rimosso l'accesso dell'utente a questo bucket.

Elimina un oggetto

  1. Usa il comando gcloud storage rm per eliminare una delle tue immagini:

    gcloud storage rm gs://my-awesome-bucket/kitten.png

    In caso di esito positivo, il comando restituisce:

    Removing gs://my-awesome-bucket/kitten.png...

    Questa copia dell'immagine non è più archiviata su Cloud Storage (anche se la copia che hai creato nella cartella just-a-folder/ esiste ancora).

Esegui la pulizia

Per evitare che al tuo account Google Cloud vengano addebitati costi relativi alle risorse utilizzate in questa pagina, elimina il progetto Google Cloud con le risorse.

  1. Apri una finestra del terminale (se non è già aperta).
  2. Utilizza il comando gcloud storage rm con il flag --recursive per eliminare il bucket e tutto ciò che contiene al suo interno:

    gcloud storage rm gs://my-awesome-bucket --recursive

    Se l'esito è positivo, il comando restituisce un messaggio simile al seguente:

    Removing gs://my-awesome-bucket/just-a-folder/cloud-storage.logo.png#1456530077282000...
    Removing gs://my-awesome-bucket/...

    Il tuo bucket e i relativi contenuti sono stati eliminati.

Passaggi successivi