Sie möchten also alle Uploads und Backups auf DigitalOcean Block Storage verschieben?
Bevor Sie dies tun, sollten Sie vielleicht stattdessen Configure an S3 compatible object storage provider for uploads in Betracht ziehen. Die Einrichtung ist nicht komplizierter und bietet einige weitere Vorteile.
Eine Discourse-Instanz auf DigitalOcean einrichten
Richten Sie eine Discourse-Instanz auf DigitalOcean mithilfe unserer offiziellen Anleitung ein.
Ein Volume zu Ihrem Droplet hinzufügen
Fügen Sie ein Block Storage Volume zu Ihrem Droplet hinzu. Notieren Sie sich den Namen des Volumes. In meinem Fall war der Name des Volumes volume-nyc1-05.
Stellen Sie sicher, dass das Volume formatiert und unter /mnt/volume_nyc1_05 eingehängt ist.
/var/discourse/shared auf das Volume verschieben
Für beste Leistung behalten wir postgres_data auf unserem Hauptlaufwerk und verschieben den Rest der Daten auf das neu angehängte Volume.
Als Root angemeldet, führen Sie diese Befehle von Ihrem Server aus:
mv /var/discourse/shared/standalone/postgres_data /var/postgres_data_discourse
mv /var/discourse/shared /mnt/volume_nyc1_05
Stellen Sie sicher, dass Sie volume_nyc1_05 durch den Namen Ihres Volumes ersetzen.
app.yml bearbeiten, um die Änderungen widerzuspiegeln
Öffnen Sie die Datei /var/discourse/containers/app.yml in Ihrem bevorzugten Editor und suchen Sie nach diesem Block:
## The Docker container is stateless; all data is stored in /shared
volumes:
- volume:
host: /var/discourse/shared/standalone
guest: /shared
- volume:
host: /var/discourse/shared/standalone/log/var-log
guest: /var/log
Ersetzen Sie den obigen Block durch:
## The Docker container is stateless; all data is stored in /shared
volumes:
- volume:
host: /mnt/volume_nyc1_05/shared/standalone
guest: /shared
- volume:
host: /mnt/volume_nyc1_05/shared/standalone/log/var-log
guest: /var/log
- volume:
host: /var/postgres_data_discourse
guest: /shared/postgres_data
Stellen Sie sicher, dass Sie volume_nyc1_05 durch den Namen Ihres Volumes ersetzen.
Speichern Sie die Datei app.yml und bauen Sie den Container neu.
/var/discourse/launcher rebuild app
Voila!
Das war’s, alle Ihre Uploads und Backups sind jetzt auf DigitalOcean Block Storage verschoben.