Créer des buckets de stockage

Cette page montre comment créer des buckets Cloud Storage. Pour obtenir une présentation des buckets, consultez la page Termes clés. Sauf indication contraire dans votre requête, les buckets sont créés dans l'emplacement multirégional US avec la classe de stockage par défaut stockage standard.

Pour créer un bucket de stockage, procédez comme suit :

Console

  1. Ouvrez le navigateur Cloud Storage dans Google Cloud Console.
    Ouvrir le navigateur Cloud Storage
  2. Cliquez sur Créer un bucket pour ouvrir le formulaire de création de bucket.
  3. Nouveau bucket.

  4. Saisissez les informations relatives à votre bucket et cliquez sur Continue (Continuer) à chaque étape :
    • Renseignez le champ Nom conformément aux exigences concernant les noms de buckets.
    • Sélectionnez la Default storage class (classe de stockage par défaut) du bucket. Cette classe de stockage par défaut sera attribuée par défaut à tous les objets importés dans le bucket. Ensuite, sélectionnez l'emplacement où les données du bucket seront stockées de manière permanente.

      Remarque : Le panneau Estimation du coût mensuel du volet de droite donne une estimation des coûts mensuels du bucket en fonction de la classe de stockage et de l'emplacement sélectionnés, ainsi que des opérations et du volume de données attendus.

    • Sélectionnez un modèle de contrôle d'accès pour déterminer comment contrôler l'accès aux objets du bucket.
    • Vous pouvez également ajouter des étiquettes de buckets, définir une règle de conservation et choisir une méthode de chiffrement.
  5. Cliquez sur OK.

gsutil

Exécutez la commande gsutil mb :

gsutil mb gs://[BUCKET_NAME]/

Où :

  • [BUCKET_NAME] correspond au nom que vous souhaitez attribuer au bucket, ce nom étant soumis à des exigences de dénomination. Par exemple, my-bucket.

Définissez les options facultatives suivantes pour mieux contrôler la création du bucket :

Exemple :

      gsutil mb -p [PROJECT_NAME] -c [STORAGE_CLASS] -l [BUCKET_LOCATION] -b on gs://[BUCKET_NAME]/

Exemples de code

C++

Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage C++.

namespace gcs = google::cloud::storage;
    using ::google::cloud::StatusOr;
    [](gcs::Client client, std::string bucket_name) {
      StatusOr<gcs::BucketMetadata> bucket_metadata =
          client.CreateBucket(bucket_name, gcs::BucketMetadata());

      if (!bucket_metadata) {
        throw std::runtime_error(bucket_metadata.status().message());
      }

      std::cout << "Bucket " << bucket_metadata->name() << " created."
                << "\nFull Metadata: " << *bucket_metadata << "\n";
    }

C#

Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage C#.

private void CreateBucket(string bucketName)
    {
        var storage = StorageClient.Create();
        storage.CreateBucket(s_projectId, bucketName);
        Console.WriteLine($"Created {bucketName}.");
    }

Go

Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Go.

ctx := context.Background()
    bucket := client.Bucket(bucketName)

    ctx, cancel := context.WithTimeout(ctx, time.Second*10)
    defer cancel()
    if err := bucket.Create(ctx, projectID, &storage.BucketAttrs{
    	StorageClass: "COLDLINE",
    	Location:     "asia",
    }); err != nil {
    	return err
    }

Java

Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Java.

Bucket bucket =
        storage.create(
            BucketInfo.newBuilder(bucketName)
                // See here for possible values: http://g.co/cloud/storage/docs/storage-classes
                .setStorageClass(StorageClass.COLDLINE)
                // Possible values: http://g.co/cloud/storage/docs/bucket-locations#location-mr
                .setLocation("asia")
                .build());

Node.js

Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Node.js.

/**
     * TODO(developer): Uncomment the following line before running the sample.
     */
    // const bucketName = 'Name of a bucket, e.g. my-bucket';

    // Imports the Google Cloud client library
    const {Storage} = require('@google-cloud/storage');

    // Creates a client
    const storage = new Storage();

    async function createBucket() {
      // Creates a new bucket in the Asia region with the coldline default storage
      // class. Leave the second argument blank for default settings.
      //
      // For default values see: https://cloud.google.com/storage/docs/locations and
      // https://cloud.google.com/storage/docs/storage-classes

      const [bucket] = await storage.createBucket(bucketName, {
        location: 'ASIA',
        storageClass: 'COLDLINE',
      });

      console.log(`Bucket ${bucket.name} created.`);
    }

    createBucket().catch(console.error);

PHP

Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage PHP.

use Google\Cloud\Storage\StorageClient;

    /**
     * Create a Cloud Storage Bucket.
     *
     * @param string $bucketName name of the bucket to create.
     * @param string $options options for the new bucket.
     *
     */
    function create_bucket($bucketName, $options = [])
    {
        $storage = new StorageClient();
        $bucket = $storage->createBucket($bucketName, $options);
        printf('Bucket created: %s' . PHP_EOL, $bucket->name());
    }

Python

Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Python.

from google.cloud import storage

    def create_bucket(bucket_name):
        """Creates a new bucket."""
        # bucket_name = "your-new-bucket-name"

        storage_client = storage.Client()

        bucket = storage_client.create_bucket(bucket_name)

        print("Bucket {} created".format(bucket.name))

    

Ruby

Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Ruby.

# project_id    = "Your Google Cloud project ID"
    # bucket_name   = "Name of Google Cloud Storage bucket to create"
    # location      = "Location of where to create Cloud Storage bucket"
    # storage_class = "Storage class of Cloud Storage bucket"

    require "google/cloud/storage"

    storage = Google::Cloud::Storage.new project_id: project_id
    bucket  = storage.create_bucket bucket_name,
                                    location:      location,
                                    storage_class: storage_class

    puts "Created bucket #{bucket.name} in #{location}" +
         " with #{storage_class} class"

API REST

API JSON

  1. Obtenez un jeton d'autorisation d'accès sur la page OAuth 2.0 Playground. Configurez Playground pour utiliser vos propres identifiants OAuth.
  2. Créez un fichier .json contenant les informations suivantes :
  3. {
          "name": "[BUCKET_NAME]",
          "location": "[BUCKET_LOCATION]",
          "storageClass": "[STORAGE_CLASS]"
        }

    Où :

    • [BUCKET_NAME] correspond au nom que vous souhaitez attribuer au bucket, ce nom étant soumis à des exigences de dénomination. Par exemple, my-bucket.
    • [BUCKET_LOCATION] correspond à l'emplacement où vous souhaitez stocker les données d'objets du bucket. Par exemple, US-EAST1.
    • [STORAGE_CLASS] est la classe de stockage par défaut du bucket. Par exemple, NEARLINE.
  4. Utilisez cURL pour appeler l'API JSON :
    curl -X POST --data-binary @[JSON_FILE_NAME].json \
             -H "Authorization: Bearer [OAUTH2_TOKEN]" \
             -H "Content-Type: application/json" \
             "https://storage.googleapis.com/storage/v1/b?project=[PROJECT_ID]"

    Où :

    • [JSON_FILE_NAME] correspond au nom du fichier JSON que vous avez créé à l'étape 2.
    • [OAUTH2_TOKEN] correspond au jeton d'accès que vous avez généré à l'étape 1.
    • [PROJECT_ID] correspond à l'ID du projet auquel le bucket sera associé. Exemple :my-project

API XML

  1. Obtenez un jeton d'autorisation d'accès sur la page OAuth 2.0 Playground. Configurez Playground pour utiliser vos propres identifiants OAuth.
  2. Créez un fichier .xml contenant les informations suivantes :
  3. <CreateBucketConfiguration>
           <LocationConstraint>[BUCKET_LOCATION]</LocationConstraint>
           <StorageClass>[STORAGE_CLASS]</StorageClass>
        </CreateBucketConfiguration>

    Où :

  4. Utilisez cURL pour appeler l'API XML :
    curl -X PUT --data-binary @[XML_FILE_NAME].xml \
             -H "Authorization: Bearer [OAUTH2_TOKEN]" \
             -H "x-goog-project-id: [PROJECT_ID]" \
             "https://storage.googleapis.com/[BUCKET_NAME]"

    Où :

    • [XML_FILE_NAME] correspond au nom du fichier XML que vous avez créé à l'étape 2.
    • [OAUTH2_TOKEN] correspond au jeton d'accès que vous avez généré à l'étape 1.
    • [PROJECT_ID] correspond à l'ID du projet auquel le bucket sera associé. Par exemple, my-project.
    • [BUCKET_NAME] correspond au nom que vous souhaitez attribuer au bucket, ce nom étant soumis à des exigences de dénomination. Par exemple, my-bucket.

Étapes suivantes