Procedura di modifica dell'endpoint S3?

Ciao,

Non riesco proprio a far funzionare questa cosa. Il vecchio endpoint è ancora presente in tutti i post.

Passaggi:

  1. Modifica “Endpoint S3” nelle impostazioni di amministrazione
  2. Rigenera tutti i post con “rake posts:rebake”
  3. Pulisci la cache Redis
    Dopo aver verificato che quanto sopra non abbia funzionato:
  4. Esegui rake posts:remap[‘vecchio endpoint senza http’, ‘nuovo endpoint senza http’]
  5. Rigenera tutti i post
  6. Riavvia il contenitore
  7. Riavvia l’intero server
    Dopo che anche questo non ha funzionato:
  8. Modifica il database SQL sostituendo tutti gli istanze del vecchio endpoint con il nuovo nella tabella “posts”, nelle colonne “raw” e “image_url”
  9. Rigenera tutti i post

Dopo tutto questo, non solo i vecchi post mantengono il vecchio endpoint, ma anche i nuovi post con nuovi allegati mostrano il vecchio endpoint. Anche i link “short-url” puntano al vecchio endpoint.

Quali sono i passaggi corretti?

#bringBackMinio

Scusa, qualcuno sa come fare questo? Dovrebbe essere qualcosa di semplice, ma non riesco a capire come si fa.

Qualche consiglio qui @falco?

@plague69 puoi condividere maggiori dettagli sulla tua configurazione?

Quali sono i valori vecchi e nuovi dell’endpoint S3?

Stai utilizzando una CDN per S3?

Non pensavo che importasse? Dato che se cambia ed è sbagliato, posso correggerlo, ma sto avendo difficoltà a farlo cambiare.

Vecchio endpoint:
http://discourse.domain.tld:9000

Nuovo endpoint: (Solo la porta è cambiata, c’era un conflitto e un altro servizio non può essere spostato)
http://discourse.domain.tld:9001

CDN invariato:
http://files.domain.tld:80

Posso rimuovere il CDN se necessario, al momento non è necessario.

Grazie @Falco

Non ho mai provato a utilizzare un server S3 su una porta non standard, poiché non è qualcosa che testiamo.

Detto questo, puoi provare a impostare l’endpoint S3 come variabile d’ambiente nel file app.yml?

env:
   # impostazioni attuali ...
   DISCOURSE_S3_ENDPOINT:  http://discourse.domain.tld:9001

Purtroppo non ha funzionato. Sono ancora bloccato a 9000.

Dopo aver aggiunto quella variabile d’ambiente, ho dovuto ricostruire il contenitore, non solo riavviarlo, perché avesse effetto. L’opzione è stata rimossa dalle impostazioni, quindi so che funzionava e che la variabile era presente nei parametri di avvio del contenitore dopo la ricostruzione.

C’è un modo per scaricare tutto sul disco locale se smettiamo di usare S3? Dato che i backup non includono S3, non posso nemmeno fare backup e ripristino.

Il comando posts:rebake rigenera gli URL brevi?

Credo che esista un task rake per il trasferimento da S3 al locale. Puoi cercare qui o guardare nel codice sorgente. Questa è probabilmente la tua migliore opzione.

C’era un tempo in cui esisteva: rake uploads:migrate_from_s3. Lo script di migrazione da Minio a S3 quando hanno rimosso il formato URL di S3 (con la barra invece dello stile con sottodomini).

Al momento non riesco nemmeno a vederlo.