Bilder-Uploads auf Google Cloud Storage einrichten

Möchten Sie Google Cloud Storage für Ihre Bild-Uploads verwenden? Hier sind die Schritte:

  • Legen Sie ein standardmäßiges Google-Projekt fest, falls Sie noch keines haben.

  • Holen Sie sich einen Entwicklerschlüssel.

  • Erstellen Sie einen Bucket, indem Sie hier vorbeikommen. Geben Sie einen eindeutigen Namen ein und wählen Sie eine Standard-Speicherklasse aus (ich habe „Multi-Regional innerhalb der USA" verwendet).

Nun müssen wir die Discourse-Instanz konfigurieren. Gehen Sie zu den Einstellungen und fügen Sie einen Filter für S3 hinzu. Nehmen Sie dann die folgenden Änderungen vor:

  • Aktivieren Sie das Kontrollkästchen „ enable s3 backups ", wenn Sie manuelle oder automatisierte Backups aktivieren möchten.

  • Geben Sie den gewünschten, oben erstellten Bucket-Namen in „ s3 backup bucket " ein, falls enable s3 backups aktiviert ist.

  • Fügen Sie sowohl „ Access Key ID " als auch „ Secret Access Key " in die jeweiligen Textfelder ein (diese wurden bei der Erstellung des Entwicklerschlüssels generiert).

  • Fügen Sie in s3_endpoint den folgenden Endpunkt ein:

    • https://storage.googleapis.com

Das war’s! Versuchen Sie, ein Bild hochzuladen – alles sollte wie durch Zauberhand funktionieren :slightly_smiling_face:


Um Bilder direkt von Ihrer Domain aus „auszuliefern", befolgen Sie die folgenden Schritte:

  • Stellen Sie sicher, dass Ihr Bucket öffentlich zugänglich ist. Er muss jedoch über Berechtigungen auf Objektebene eingerichtet sein.

  • Richten Sie einen Load Balancer ein, falls Sie noch keinen haben. Für das Backend erstellen Sie einen Backend-Bucket, verweisen Sie ihn auf den oben erstellten Storage-Bucket, aktivieren Sie CDN und verbinden Sie ihn.

  • Für die URL-Zuordnung erstellen Sie zwei Regeln. Die Hosts für beide müssen * sein; die Pfade müssen /original/* und /optimized/* lauten; und das Backend muss auf den Backend-Bucket verweisen – speichern Sie die Einstellungen.

  • Ändern Sie in den Discourse-Einstellungen die s3 cdn url auf Ihre Domain – stellen Sie sicher, dass dies mit der Einrichtung Ihrer Load-Balancer-Regel übereinstimmt.

Das war’s – die Bilder sollten nun von www.yourdomain.com/ kommen.


Backups sind jetzt möglich, wie @tuanpembual dankenswerterweise in diesem Beitrag erwähnt hat. Im Wesentlichen müssen Sie Folgendes tun:

  1. Gehen Sie in Ihrem Projekt zur Google Cloud Console.
  2. Wählen Sie „Storage".
  3. Wählen Sie Ihren Bucket aus.
  4. Gehen Sie zum Reiter „Berechtigungen".
  5. Fügen Sie eine neue Berechtigung hinzu, geben Sie Ihre Service-Account-E-Mail-Adresse ein. Für Rollen wählen Sie „Storage Legacy Object Owner".
  6. Speichern und fertig.
19 „Gefällt mir“