Vuoi utilizzare Google Storage per i tuoi caricamenti di immagini? Ecco i passaggi:
-
Imposta un progetto Google predefinito se non ne hai già uno.
-
Ottieni una chiave per sviluppatori.
-
Crea un bucket andando qui. Inserisci un nome univoco e seleziona una classe di archiviazione predefinita (ho utilizzato multi-regionale negli Stati Uniti).
Ora dobbiamo configurare l’istanza di Discourse. Vai alle impostazioni e aggiungi un filtro per S3. Quindi apporta le modifiche seguenti:
-
Spunta la casella di controllo "
enable s3 backups" se desideri attivare backup manuali o automatizzati -
Inserisci il nome del bucket desiderato creato sopra in "
s3 backup bucket" se "enable s3 backups" è selezionato -
Incolla sia "
Access Key ID" che "Secret Access Key" nei rispettivi campi di testo (questi sono stati generati al momento della creazione della chiave per sviluppatori) -
In
s3_endpoint, incolla l’endpoint seguente:https://storage.googleapis.com
È tutto! Prova a caricare un’immagine: dovrebbe funzionare tutto magicamente ![]()
Per “servire” le immagini direttamente dal tuo dominio, segui i passaggi seguenti:
-
Assicurati che il tuo bucket sia accessibile pubblicamente. Deve essere configurato utilizzando autorizzazioni a livello di oggetto
-
Configura un load balancer se non ne hai già uno. Per il backend, crea un bucket backend, puntalo al bucket di archiviazione creato sopra, abilita CDN e connettilo
-
Per la tabella URL, crea due regole. Gli host per entrambe devono essere
*; i percorsi devono essere/original/*e/optimized/*; e il backend deve puntare al bucket backend: salva le impostazioni -
Nelle impostazioni di Discourse, modifica
s3 cdn urlcon il tuo dominio: assicurati che sia coerente con la configurazione della regola del load balancer
È tutto: le immagini ora dovrebbero provenire da www.tuodominio.com/
I backup sono ora possibili, come ha giustamente sottolineato @tuanpembual in questo post. Fondamentalmente, devi:
- Andare al tuo progetto nella Console Google Cloud
- Selezionare Storage
- Selezionare il tuo bucket
- Andare alla scheda autorizzazioni
- Aggiungi una nuova autorizzazione, inserisci l’email del tuo account di servizio con il tuo account. Per i ruoli, seleziona Storage Legacy Object Owner
- Salva ed è fatto.