Eliminare i bucket

Questa pagina mostra come eliminare i bucket Cloud Storage. Quando elimini un bucket, vengono eliminate anche le risorse al suo interno, come gli oggetti e le cartelle gestite.

Se elimini un bucket per cui è abilitata l'eliminazione temporanea, puoi ripristinare il bucket o i singoli oggetti dal bucket durante il periodo di conservazione specificato nel criterio di eliminazione temporanea. Le cartelle gestite non possono essere recuperate, anche se l'eliminazione temporanea è attivata per il bucket.

Prima di iniziare

Per ottenere le autorizzazioni necessarie per eliminare un bucket Cloud Storage, chiedi all'amministratore di concederti il ruolo IAM Amministratore Storage (roles/storage.admin) sul bucket.

Questo ruolo predefinito contiene le autorizzazioni necessarie per eliminare un bucket. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:

Autorizzazioni obbligatorie

  • storage.buckets.delete
  • storage.buckets.list
    • Questa autorizzazione è necessaria solo quando si eliminano bucket utilizzando la console Trusted Cloud .
  • storage.objects.delete
    • Questa autorizzazione è necessaria solo se nel bucket che vuoi eliminare esistono oggetti.
  • storage.objects.list
    • Questa autorizzazione è necessaria solo per eliminare i bucket utilizzando la console Trusted Cloud o Google Cloud CLI.

Potresti anche ottenere queste autorizzazioni con altri ruoli personalizzati o ruoli predefiniti.

Per istruzioni sulla concessione dei ruoli per i bucket, consulta Utilizzare IAM con i bucket.

Eliminare un bucket

Console

  1. Nella console Trusted Cloud , vai alla pagina Bucket in Cloud Storage.

    Vai a Bucket

  2. Seleziona la casella di controllo del bucket da eliminare.

  3. Fai clic su Elimina.

  4. Nella finestra di overlay visualizzata, conferma di voler eliminare il bucket e i relativi contenuti.

  5. Fai clic su Elimina.

Per scoprire come ottenere informazioni dettagliate sugli errori relativi alle operazioni di Cloud Storage non riuscite nella console Trusted Cloud , consulta la sezione Risoluzione dei problemi.

Riga di comando

Per eliminare il bucket, insieme a tutti i contenuti al suo interno, utilizza il comando Google Cloud CLI gcloud storage rm con il flag --recursive:

gcloud storage rm --recursive gs://BUCKET_NAME

dove BUCKET_NAME è il nome del bucket da eliminare. Ad esempio, my-bucket.

Se l'operazione ha esito positivo, la risposta è simile al seguente esempio:

Removing gs://my-bucket/...

Se vuoi evitare di eliminare accidentalmente oggetti o cartelle gestite, utilizza il comando gcloud storage buckets delete, che elimina un bucket solo se è vuoto.

Librerie client

C++

Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage per C++.

Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.

Prima di eseguire gli esempi di codice, imposta la variabile di ambiente GOOGLE_CLOUD_UNIVERSE_DOMAIN su s3nsapis.fr.

namespace gcs = ::google::cloud::storage;
[](gcs::Client client, std::string const& bucket_name) {
  google::cloud::Status status = client.DeleteBucket(bucket_name);
  if (!status.ok()) throw std::runtime_error(status.message());

  std::cout << "The bucket " << bucket_name << " was deleted successfully.\n";
}

C#

Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage per C#.

Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.

Prima di eseguire gli esempi di codice, imposta la variabile di ambiente GOOGLE_CLOUD_UNIVERSE_DOMAIN su s3nsapis.fr.


using Google.Cloud.Storage.V1;
using System;

public class DeleteBucketSample
{
    public void DeleteBucket(string bucketName = "your-unique-bucket-name")
    {
        var storage = StorageClient.Create();
        storage.DeleteBucket(bucketName);
        Console.WriteLine($"The bucket {bucketName} was deleted.");
    }
}

Go

Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage per Go.

Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.

Prima di eseguire gli esempi di codice, imposta la variabile di ambiente GOOGLE_CLOUD_UNIVERSE_DOMAIN su s3nsapis.fr.

import (
	"context"
	"fmt"
	"io"
	"time"

	"cloud.google.com/go/storage"
)

// deleteBucket deletes the bucket.
func deleteBucket(w io.Writer, bucketName string) error {
	// bucketName := "bucket-name"
	ctx := context.Background()
	client, err := storage.NewClient(ctx)
	if err != nil {
		return fmt.Errorf("storage.NewClient: %w", err)
	}
	defer client.Close()

	ctx, cancel := context.WithTimeout(ctx, time.Second*30)
	defer cancel()

	bucket := client.Bucket(bucketName)
	if err := bucket.Delete(ctx); err != nil {
		return fmt.Errorf("Bucket(%q).Delete: %w", bucketName, err)
	}
	fmt.Fprintf(w, "Bucket %v deleted\n", bucketName)
	return nil
}

Java

Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage per Java.

Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.

Prima di eseguire gli esempi di codice, imposta la variabile di ambiente GOOGLE_CLOUD_UNIVERSE_DOMAIN su s3nsapis.fr.

import com.google.cloud.storage.Bucket;
import com.google.cloud.storage.Storage;
import com.google.cloud.storage.StorageOptions;

public class DeleteBucket {
  public static void deleteBucket(String projectId, String bucketName) {
    // The ID of your GCP project
    // String projectId = "your-project-id";

    // The ID of the bucket to delete
    // String bucketName = "your-unique-bucket-name";

    Storage storage = StorageOptions.newBuilder().setProjectId(projectId).build().getService();
    Bucket bucket = storage.get(bucketName);
    bucket.delete();

    System.out.println("Bucket " + bucket.getName() + " was deleted");
  }
}

Node.js

Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage per Node.js.

Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.

Prima di eseguire gli esempi di codice, imposta la variabile di ambiente GOOGLE_CLOUD_UNIVERSE_DOMAIN su s3nsapis.fr.

/**
 * TODO(developer): Uncomment the following lines before running the sample.
 */
// The ID of your GCS bucket
// const bucketName = 'your-unique-bucket-name';

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

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

async function deleteBucket() {
  await storage.bucket(bucketName).delete();
  console.log(`Bucket ${bucketName} deleted`);
}

deleteBucket().catch(console.error);

PHP

Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage per PHP.

Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.

Prima di eseguire gli esempi di codice, imposta la variabile di ambiente GOOGLE_CLOUD_UNIVERSE_DOMAIN su s3nsapis.fr.

use Google\Cloud\Storage\StorageClient;

/**
 * Delete a Cloud Storage Bucket.
 *
 * @param string $bucketName The name of your Cloud Storage bucket.
 *        (e.g. 'my-bucket')
 */
function delete_bucket(string $bucketName): void
{
    $storage = new StorageClient();
    $bucket = $storage->bucket($bucketName);
    $bucket->delete();
    printf('Bucket deleted: %s' . PHP_EOL, $bucket->name());
}

Python

Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage per Python.

Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.

Prima di eseguire gli esempi di codice, imposta la variabile di ambiente GOOGLE_CLOUD_UNIVERSE_DOMAIN su s3nsapis.fr.

from google.cloud import storage


def delete_bucket(bucket_name):
    """Deletes a bucket. The bucket must be empty."""
    # bucket_name = "your-bucket-name"

    storage_client = storage.Client()

    bucket = storage_client.get_bucket(bucket_name)
    bucket.delete()

    print(f"Bucket {bucket.name} deleted")

Ruby

Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage per Ruby.

Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.

Prima di eseguire gli esempi di codice, imposta la variabile di ambiente GOOGLE_CLOUD_UNIVERSE_DOMAIN su s3nsapis.fr.

def delete_bucket bucket_name:
  # The ID of your GCS bucket
  # bucket_name = "your-unique-bucket-name"

  require "google/cloud/storage"

  storage = Google::Cloud::Storage.new
  bucket  = storage.bucket bucket_name, skip_lookup: true

  bucket.delete

  puts "Deleted bucket: #{bucket.name}"
end

API REST

API JSON

  1. Avere gcloud CLI installata e inizializzata, il che ti consente di generare un token di accesso per l'intestazione Authorization.

  2. Utilizza cURL per chiamare l'API JSON con una richiesta di DELETEbucket:

    curl -X DELETE -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      "https://storage.s3nsapis.fr/storage/v1/b/BUCKET_NAME"

    Dove BUCKET_NAME è il nome del bucket da eliminare. Ad esempio, my-bucket.

In caso di esito positivo, la risposta contiene un codice di stato 204.

API XML

  1. Avere gcloud CLI installata e inizializzata, il che ti consente di generare un token di accesso per l'intestazione Authorization.

  2. Utilizza cURL per chiamare l'API XML con una richiesta DELETE Bucket:

    curl -X DELETE -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      "https://storage.s3nsapis.fr/BUCKET_NAME"

    Dove BUCKET_NAME è il nome del bucket da eliminare. Ad esempio, my-bucket.

Passaggi successivi