Sposta caricamenti e backup su DigitalOcean Block Storage

Quindi vuoi spostare tutti i caricamenti e i backup su DigitalOcean Block Storage?

Prima di farlo, potresti considerare Configure an S3 compatible object storage provider for uploads. Non è più complicato da configurare e offre alcuni altri vantaggi.

Configura un’istanza Discourse su DigitalOcean

Configura un’istanza Discourse su DigitalOcean utilizzando la nostra guida ufficiale.

Aggiungi un Volume al tuo droplet

Aggiungi un volume di archiviazione a blocchi al tuo droplet. Prendi nota del nome del volume. Nel mio caso, il nome del volume era volume-nyc1-05.

Assicurati che il volume sia formattato e montato in /mnt/volume_nyc1_05.

Sposta /var/discourse/shared sul volume

Per le migliori prestazioni manterremo postgres_data sul nostro disco principale e sposteremo il resto dei dati sul volume appena allegato.

Loggato come root, esegui questi comandi dal tuo server:

mv /var/discourse/shared/standalone/postgres_data /var/postgres_data_discourse
mv /var/discourse/shared /mnt/volume_nyc1_05

Assicurati di sostituire volume_nyc1_05 con il nome del tuo volume.

Modifica app.yml per riflettere le modifiche

Apri il file /var/discourse/containers/app.yml nel tuo editor preferito e cerca questo blocco:

## 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

Sostituisci il blocco precedente con:

## 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

Assicurati di sostituire volume_nyc1_05 con il nome del tuo volume.

Salva il file app.yml e ricostruisci il container.

/var/discourse/launcher rebuild app

:tada: Voilà!

Questo è tutto, tutti i tuoi caricamenti e backup sono ora spostati su DigitalOcean Block Storage.


Crediti

Questa guida è ispirata al suggerimento di @sam qui.

37 Mi Piace

Sto cercando di seguire questo approccio in Hetzner che ha uno storage simile, ma mi chiedo se ciò possa influire sulle prestazioni generali.

Ho letto che offrirà 1/3 della velocità dell’SSD, ma sto parlando di una differenza notevole nell’uso quotidiano per caricamenti e visualizzazione di file nella nostra istanza Discourse perché non sono sicuro se quel 1/3 influenzi davvero o vada bene per caricare file.

Naturalmente, il risultato finale dipende dalla nostra CPU, RAM e da quale filesystem e dimensione del blocco stiamo utilizzando.

Qualcuno vuole condividere la propria esperienza? :slight_smile:

Grazie per la guida!

Dovresti spegnere la droplet prima di farlo? Normalmente darei per scontato di sì, ma dato che sta solo spostando i caricamenti?

No. Crea solo lo spazio e segui le istruzioni per montarlo.

Grazie per la guida. Dopo aver completato tutti i passaggi e aver riattivato il forum, notiamo costantemente immagini che non vengono caricate. Poiché hanno un percorso errato.

C’è un modo per eseguire una diagnosi e apportare alcune correzioni automatiche?

Alla fine hai risolto il problema?

1 Mi Piace

no :frowning: non sono riuscito a risolverlo.

1 Mi Piace