Cloud Storage mit Ruby verwenden

Auf dieser Seite erfahren Sie, wie Sie mithilfe der Google Cloud-Clientbibliothek für Ruby grundlegende Aufgaben in Cloud Storage ausführen können. Außerdem erhalten Sie Informationen zum zugrunde liegenden Ruby-Code, der zum Ausführen dieser Aufgaben verwendet wird.

In Cloud Storage entstehende Kosten basieren auf den verwendeten Ressourcen. Die in dieser Kurzanleitung genutzten Cloud Storage-Ressourcen haben normalerweise einen Wert von unter 0,01 US-Dollar.

Hinweise

  1. Sie benötigen Ruby Version 2.3 oder höher und das RubyGem Bundler.

  2. Erstellen Sie in einem Terminalfenster ein Verzeichnis für Ihre Arbeitsumgebung und öffnen Sie es:

    mkdir gcs-programmatic-quickstart
    cd gcs-programmatic-quickstart

  3. Klonen Sie das GitHub-Repository, das Beispiele für die Verwendung der Cloud Storage-Clientbibliotheken für Ruby und eine CLI zum Ausführen der Beispiele enthält:

    git clone https://github.com/GoogleCloudPlatform/ruby-docs-samples.git

  4. Bereiten Sie die Ruby-Umgebung vor, indem Sie die Storage-Clientbibliothek für Ruby installieren:

    cd ruby-docs-samples/storage
    bundle install

    bundle install installiert das google-cloud-storage-Gem, das in der Beispiel-Gemfile definiert wurde. Dieses Gem wird von den Befehlen in dieser Anleitung verwendet.

  5. Melden Sie sich in Ihrem Google-Konto an.

    Wenn Sie noch kein Konto haben, registrieren Sie sich hier für ein neues Konto.

  6. Richten Sie ein GCP Console-Projekt ein.

    Projekt einrichten

    Führen Sie folgende Schritte per Mausklick aus:

    • Erstellen Sie ein Projekt oder wählen Sie eines aus.
    • Aktivieren Sie die Cloud Storage erforderliche API für dieses Projekt.
    • Erstellen Sie ein Dienstkonto.
    • Laden Sie einen privaten Schlüssel als JSON-Datei herunter.

    Sie können diese Ressourcen jederzeit in der GCP Console ansehen und verwalten.

  7. Legen Sie Ihr Projekt als lokale Umgebungsvariable fest:

    Linux oder MacOS

    export GOOGLE_CLOUD_PROJECT=[PROJECT-ID]

    Windows

    Mit PowerShell:

    $env:GOOGLE_CLOUD_PROJECT=[PROJECT-ID]

    Mit Eingabeaufforderung:

    set GOOGLE_CLOUD_PROJECT=[PROJECT-ID]

Bucket erstellen

Buckets sind die grundlegenden Container, die Ihre Daten enthalten.

So erstellen Sie einen Bucket:

  1. Verwenden Sie den folgenden Befehl und einen eindeutigen Namen, um einen Bucket zu erstellen:

    bundle exec ruby buckets.rb create my-awesome-bucket

    Dieser Befehl verwendet einen Bucket namens my-awesome-bucket. Wählen Sie Ihren eigenen global eindeutigen Bucket-Namen aus.

    Wenn der Vorgang erfolgreich ist, gibt der Befehl Folgendes zurück:

    Created bucket: my-awesome-bucket

    Damit haben Sie einen Bucket erstellt, in dem Sie Ihre Inhalte speichern können.

Objekt in den Bucket laden

Bild eines Kätzchens

  1. Klicken Sie mit der rechten Maustaste auf das Bild oben und speichern Sie es auf Ihrem Computer, z. B. auf dem Desktop.

  2. Verwenden Sie den folgenden Befehl, um das Bild von dem Speicherort, unter dem Sie es abgelegt haben, in den von Ihnen erstellten Bucket zu kopieren:

    bundle exec ruby files.rb upload my-awesome-bucket ~/Desktop/kitten.png kitten.png

    Wenn der Vorgang erfolgreich ist, gibt der Befehl Folgendes zurück:

    Uploaded kitten.png

    Damit haben Sie ein Objekt in Ihrem Bucket gespeichert.

Objekt aus dem Bucket herunterladen

  1. Verwenden Sie den folgenden Befehl, um das im Bucket gespeicherte Bild auf Ihren Computer herunterzuladen, z. B. auf den Desktop:

    bundle exec ruby files.rb download my-awesome-bucket kitten.png ~/Desktop/kitten2.png

    Wenn der Vorgang erfolgreich ist, gibt der Befehl Folgendes zurück:

    Downloaded kitten.png

    Sie haben gerade etwas aus dem Bucket heruntergeladen.

Objekt im Bucket kopieren

  1. Verwenden Sie den folgenden Befehl, um eine Kopie des im Bucket gespeicherten Bildes zu erstellen:

    bundle exec ruby files.rb copy my-awesome-bucket kitten.png my-awesome-bucket kitten3.png

    Wenn der Vorgang erfolgreich ist, gibt der Befehl Folgendes zurück:

    kitten.png in my-awesome-bucket copied to kitten3.png in my-awesome-bucket

    Damit haben Sie das im Bucket enthaltene Objekt kopiert.

Inhalt eines Buckets auflisten

  1. Verwenden Sie den folgenden Befehl, um den Inhalt des Buckets aufzulisten:

    bundle exec ruby files.rb list my-awesome-bucket

    Wenn der Vorgang erfolgreich ist, gibt der Befehl Folgendes zurück:

    kitten.png
    kitten3.png
    

    Darin sehen Sie den Inhalt Ihres Buckets.

Zugriff auf Ihren Bucket gewähren

  1. Verwenden Sie den folgenden Befehl, um einer bestimmten E-Mail-Adresse die Berechtigung zum Steuern der Objekte in Ihrem Bucket zu erteilen:

    bundle exec ruby iam.rb add_bucket_iam_member my-awesome-bucket roles/storage.objectAdmin user:jane@gmail.com

    Wenn der Vorgang erfolgreich ist, gibt der Befehl Folgendes zurück:

    Added user:jane@gmail.com with role roles/storage.objectAdmin to my-awesome-bucket

    Nun kann jemand anderes etwas in den Bucket hochladen und Inhalte einsehen.

  2. Mit dem folgenden Befehl heben Sie diese Berechtigung wieder auf:

    bundle exec ruby iam.rb remove_bucket_iam_member my-awesome-bucket roles/storage.objectAdmin user:jane@gmail.com

    Wenn der Vorgang erfolgreich ist, gibt der Befehl Folgendes zurück:

    Removed user:jane@gmail.com with role roles/storage.objectAdmin from my-awesome-bucket

    Damit haben Sie den Zugriff des Nutzers auf diesen Bucket entfernt.

Objekte löschen

  1. Verwenden Sie zum Löschen eines Objekts den folgenden Befehl:

    bundle exec ruby files.rb delete my-awesome-bucket kitten.png

    Wenn der Vorgang erfolgreich ist, gibt der Befehl Folgendes zurück:

    Deleted kitten.png

    Diese Kopie des Objekts ist nicht mehr in Cloud Storage gespeichert. Die Kopie mit dem Namen kitten3.png ist jedoch noch vorhanden.

Bereinigen

So vermeiden Sie, dass Ihrem GCP-Konto die in dieser Anleitung verwendeten Ressourcen in Rechnung gestellt werden:

  1. Verwenden Sie den folgenden Befehl, um kitten3.png aus Ihrem Bucket zu löschen:

    bundle exec ruby files.rb delete my-awesome-bucket kitten3.png
  2. Verwenden Sie den folgenden Befehl, um den Bucket zu löschen:

    bundle exec ruby buckets.rb delete my-awesome-bucket

    Wenn der Vorgang erfolgreich durchgeführt wurde, wird eine Meldung folgender Art angezeigt:

    Deleted bucket: my-awesome-bucket

    Der Bucket und sein Inhalt wurden gelöscht.

Weitere Informationen

Hat Ihnen diese Seite weitergeholfen? Teilen Sie uns Ihr Feedback mit:

Feedback geben zu...