Découvrir le stockage d'objets avec l'outil gcloud

Cette page explique comment effectuer des tâches de base dans Cloud Storage à l'aide de l'outil de ligne de commande gcloud.

Vous ne payez que pour les ressources que vous utilisez dans Cloud Storage. Ce guide de démarrage rapide utilise généralement moins de 0,01 USD de ressources Cloud Storage.

Avant de commencer

  1. Connectez-vous à votre compte Google Cloud. Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de nos produits en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits gratuits pour exécuter, tester et déployer des charges de travail.
  2. Dans Google Cloud Console, sur la page de sélection du projet, cliquez sur Créer un projet pour commencer à créer un projet Google Cloud.

    Accéder au sélecteur de projet

  3. Vérifiez que la facturation est activée pour votre projet Google Cloud.

  4. Installez Google Cloud CLI.
  5. Pour initialiser gcloudCLI, exécutez la commande suivante :

    gcloud init
  6. Dans Google Cloud Console, sur la page de sélection du projet, cliquez sur Créer un projet pour commencer à créer un projet Google Cloud.

    Accéder au sélecteur de projet

  7. Vérifiez que la facturation est activée pour votre projet Google Cloud.

  8. Installez Google Cloud CLI.
  9. Pour initialiser gcloudCLI, exécutez la commande suivante :

    gcloud init

Créer un bucket

Les buckets sont les conteneurs de base dans lesquels sont stockées vos données dans Cloud Storage.

Pour créer un bucket :

  1. Ouvrez une fenêtre de terminal.
  2. Exécutez la commande gcloud storage buckets create et utilisez un nom unique pour créer un bucket :

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

    Cette commande utilise un bucket nommé "my-awesome-bucket". Vous devez choisir un nom unique pour votre bucket.

    Si l'opération réussit, la commande renvoie le résultat suivant :

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

Vous venez de créer un bucket dans lequel vous pouvez stocker vos données.

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

Réessayez en donnant un autre nom au bucket.

Importer un objet dans un bucket

Image d'un chaton à importer dans le bucket.

  1. Cliquez avec le bouton droit sur l'image ci-dessus et enregistrez-la sur votre ordinateur, par exemple sur le bureau.

  2. Exécutez la commande gcloud storage cp pour copier l'image à partir de l'emplacement où vous l'avez enregistrée dans le bucket que vous avez créé :

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

    Si l'opération réussit, la commande renvoie le résultat suivant :

    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

    Vous venez de stocker un objet dans votre bucket.

Télécharger l'objet à partir du bucket

  1. Exécutez la commande gcloud storage cp pour télécharger l'image que vous avez stockée dans votre bucket sur votre ordinateur, par exemple sur le bureau :

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

    Si l'opération réussit, la commande renvoie le résultat suivant :

    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

    Vous venez de télécharger un objet à partir de votre bucket.

Copier l'objet dans un dossier du bucket

  1. Utilisez la commande gcloud storage cp pour créer un dossier et y copier l'image :

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

    Si l'opération réussit, la commande renvoie le résultat suivant :

    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

    Vous venez de copier votre image dans un nouveau dossier de votre bucket.

Afficher le contenu d'un bucket ou d'un dossier

  1. Utilisez la commande gcloud storage ls pour répertorier le contenu du niveau supérieur de votre bucket :

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

    Si l'opération réussit, la commande renvoie un message semblable à celui-ci :

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

    Vous venez d'afficher le contenu du niveau supérieur de votre bucket.

Afficher les détails d'un objet

  1. Exécutez la commande gcloud storage ls avec l'option --long pour obtenir des détails sur l'une de vos images :

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

    Si l'opération réussit, la commande renvoie un message semblable à celui-ci :

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

    Vous venez d'obtenir des informations sur la taille et la date de création de l'image.

Rendre les objets accessibles au public

  1. Exécutez la commande gcloud storage buckets add-iam-policy-binding pour autoriser tous les utilisateurs à lire les images stockées dans votre bucket :

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

    La commande aboutit si votre réponse contient les éléments suivants :

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

    Désormais, tout le monde peut obtenir vos images.

  2. Pour supprimer cet accès, exécutez la commande suivante :

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

    La commande aboutit si aucune erreur n'est affichée.

    Vous avez supprimé l'accès public aux images de votre bucket.

Autoriser l'accès au bucket

  1. Exécutez la commande gcloud storage buckets add-iam-policy-binding pour autoriser une adresse e-mail spécifique à ajouter des objets à votre bucket :

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

    La commande aboutit si votre réponse contient les éléments suivants :

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

    Un autre utilisateur peut maintenant ajouter des éléments à votre bucket.

  2. Pour supprimer cette autorisation, exécutez la commande suivante :

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

    La commande aboutit si aucune erreur n'est affichée.

    Vous venez de supprimer l'accès de l'utilisateur à ce bucket.

Supprimer un objet

  1. Exécutez la commande gcloud storage rm pour supprimer l'une de vos images :

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

    Si l'opération réussit, la commande renvoie le résultat suivant :

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

    Cette copie de l'image n'est plus stockée dans Cloud Storage (mais la copie que vous en avez faite dans le dossier just-a-folder/ existe encore).

Effectuer un nettoyage

Pour éviter que les ressources utilisées sur cette page soient facturées sur votre compte Google Cloud, procédez comme suit :

  1. Ouvrez une fenêtre de terminal (si aucune n'est déjà ouverte).
  2. Utilisez la commande gcloud storage rm avec l'option --recursive pour supprimer le bucket et tout ce qu'il contient :

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

    Si l'opération réussit, la commande renvoie un message semblable à celui-ci :

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

    Vous venez de supprimer votre bucket et son contenu.

Étape suivante