Digital Ocean Spaces (S3) "impossibile firmare la richiesta senza credenziali impostate"

Sto cercando di configurare Digital Ocean Spaces per l’archiviazione S3.

Ottengo questo quando provo ad eseguire i backup…

Lo stesso quando carico le foto…

Ho questa configurazione…

…ma non sono sicuro di come testare se funzionano effettivamente. Non conosco molto bene questi sistemi. Questo è solo per un piccolo forum di un gruppo di amici.

Inizialmente avevo attivo quanto segue, ma ho dovuto commentarlo di nuovo in app.yml perché non si ricompilava con quelle righe attive. Non sono sicuro se sia ancora necessario o meno a questo punto…

Ho caricato manualmente un file dall’area di amministrazione di Digital Ocean Spaces, l’ho impostato su pubblico e riesco ad aprirlo tramite un browser.

Ho anche creato manualmente la cartella “*****-backups” in DO Spaces.

Ecco un esempio di quanto poco so. Sono bloccato qui e non so davvero perché. In qualche modo sono tornato indietro da qualcosa e non so come tornare indietro.

image
Per qualche motivo, ciò che di solito si trova in /var/discourse ora sembra essere in /var/www/discourse

Sono solo bloccato a questo punto. Ho cercato nel forum e non ho trovato nulla che possa risolverlo. Ho passato un giorno nello stesso ciclo. Questo è simile, ma è AWS S3 reale e non DO Spaces (S3)…

Qualsiasi aiuto sarebbe apprezzato. Grazie.

1 Mi Piace

Manca l’impostazione use_s3 consigliata nell’argomento che hai linkato.

Dovresti copiare e incollare quelle impostazioni dall’argomento che hai linkato invece di provare a digitarle. Hai bisogno dei due punti, non del segno di uguale.

Se vedi cose in /var/www/discourse, sei all’interno del container. Devi uscire per tornare al sistema operativo.

1 Mi Piace

Grazie per il feedback.

[quote=“pfaffman, post:2, topic:391139”]Ti manca l’impostazione use_s3 che è raccomandata nell’argomento che hai linkato.

[/quote]

È presente. Immagino che semplicemente non venga visualizzata con quell’altro comando. Avevo commentato la CDN perché diceva che c’erano problemi, quindi stavo cercando di isolare quello. Soprattutto perché non sono sicuro al 100% che l’URL sia quello corretto dato che l’esempio era un dominio personalizzato anziché quello predefinito di Spaces. Forse è stata una cattiva idea provare a isolarlo. Stavo provando molte cose.
Ecco l’impostazione completa…

[quote=“pfaffman, post:2, topic:391139”]Dovresti copiare e incollare quelle impostazioni dall’argomento che hai linkato invece di provare a digitarle. Hai bisogno dei due punti, non del segno di uguale.

[/quote]

Non sono sicuro al 100%, ma sono abbastanza sicuro di aver fatto copia/incolla. Di solito lo faccio.

Ho avuto un errore quando ho provato a ricostruire, quindi sono tornato indietro e ho commentato di nuovo queste righe…

Proverò ad abilitarle di nuovo ed eseguirle.

[quote=“pfaffman, post:2, topic:391139”]Se vedi cose in /var/www/discourse sei all’interno del container. Devi uscire per tornare al sistema operativo.

[/quote]

Ah, ‘exit’.

Era quello che stavo cercando. Grazie.

Cosa mi manca su questa parte S3?

Ho rimosso il commento per renderlo attivo…

MODIFICA: Mi sono appena reso conto che c’è un errore di battitura in quell’ultima riga. Non so come ho fatto quel casino.

Ho salvato e provato a ricostruire e ottengo questo…

Quell’avviso di sicurezza era una novità. Ho eseguito per cercare di risolverlo…

chmod o-rwx containers/app.yml

Ho verificato la versione di docker…

docker --version

Sto cercando come aggiornare quello. Pensavo che la ricostruzione lo avrebbe aggiornato, ma forse no.

Questo non ha risolto il problema. Anche con il vecchio commentato e quello copiato/incollato…

image

Ricevo ancora un errore alla ricostruzione…

image
“non è stata trovata la chiave prevista durante l’analisi di una mappatura a blocchi alla riga 109 colonna 3”

Non sono sicuro a quale chiave si riferisca.

Le impostazioni della chiave di accesso e segreta sono nelle impostazioni. Non sono sicuro di come testare per assicurarmi che tali impostazioni funzionino effettivamente, ma ci sono.

Sembra che ci sia quasi, ma…

Dopo la ricostruzione, è rimasto bloccato in fase di elaborazione…

image

L’ho lasciato così per qualche ora. Nessun cambiamento.

Ho commentato la CDN e mi è apparso di nuovo l’errore della “riga 109”. Ho commentato anche la parte inferiore e ho ricostruito. Riesco ad accedere al forum, ma non riesco ancora a caricare allegati.

Durante la ricostruzione, sembra bloccarsi qui per un po’.

image

Non sono sicuro che sia rilevante dato che alla fine supera questo punto senza alcuna azione.

Con la CDN e la parte inferiore commentate, riesco a far funzionare il forum, ma ho ancora il problema originale…

Non sono sicuro di cosa mi stia sfuggendo.

Dopo la ricostruzione, è rimasto bloccato su “thinking”. All’inizio ho pensato che stesse trasferendo tutto o lavorando in background, quindi l’ho lasciato…

L’ho lasciato così per qualche ora. Nessun cambiamento.

Ho controllato Spaces e nessun file è stato caricato, quindi immagino che fosse bloccato su qualcosa.

Ho commentato la CDN e mi è apparso di nuovo l’errore “linea 109”.

Ho commentato anche l’area inferiore e ho ricostruito. Riesco ad accedere al forum, ma non riesco ancora a caricare allegati.

Alla ricostruzione, sembra bloccarsi qui per un po’, ma alla fine ci passa senza alcuna azione, quindi non sono sicuro che sia rilevante…

Con la CDN e l’area inferiore commentate, riesco a far funzionare il forum, ma ho ancora il problema originale…

Non sono sicuro di cosa mi stia sfuggendo. Ho rinunciato e per ora ho lasciato commentate tutte le impostazioni S3.

NOTA A MARGINE: C’è un comando per aggiornare il docker? Penso di farlo normalmente tramite l’area admin, ma non mi sta chiedendo di aggiornare dalla 24.0.2. Non sono sicuro di quanto sia un problema. Penso che la versione attuale sia la 24.0.7.

Non sono sicuro se le impostazioni dell’area di amministrazione abbiano la precedenza su quelle di app.yml o viceversa, ma ecco quelle impostazioni nel caso servissero…

Non mi è chiaro se gli URL di S3 e CDN debbano includere il nome del bucket o meno. Inoltre, non sono sicuro che debbano essere link identici.

Spero che qualcuno noti qualcosa di semplice. Se avete letto fin qui, grazie ancora!

Stai usando la CDN di Social Ocean?

Se non si fosse caricato in 30 secondi, probabilmente non si caricherà. Ma non devi aspettare così tanto. Puoi guardare la scheda di rete negli strumenti di sviluppo del browser e vedere cosa non si carica.

Non sono sicuro di cosa sia il CDN social ocean, ma sto solo cercando di usare il CDN integrato in Spaces.

Scusate, era “Digital Ocean”.

Il messaggio che ho citato dice che non dovresti farlo perché non funziona.

Se vuoi ulteriore aiuto da parte mia, il mio indirizzo email è nel mio profilo

1 Mi Piace

OK. Questo è così strano.

QUALCOSA funziona ora. Pensavo di aver commentato tutto (disattivato) e caricato una foto ieri per assicurarmi che funzionasse di nuovo. Ho controllato il percorso stamattina e sta usando… la CDN, immagino?

https://XXXXXXX-storage.sfo3.digitaloceanspaces.com/optimized/2X/9/9b9fdb3eb27831650752b848363ea2a1a66ce137_2_375x500.jpeg

Ho controllato in Spaces e ci sono alcune immagini lì…

image
Sembra che le immagini funzionino correttamente ora. L’unica cosa a cui riesco a pensare è che ho deselezionato “S3 use IAM profile” nelle impostazioni. Immagino che sia questa la chiave che stava cercando e che abbia smesso di cercare. Non sono sicuro del perché l’avessi selezionato in primo luogo. Probabilmente perché in realtà non ho idea di cosa stia facendo. :slight_smile:

image

Ho ancora un problema nell’eseguire i backup, ma forse è un problema dello spazio Droplet. Sembra che non abbia abbastanza spazio per prepararlo localmente prima di caricarlo. Approfondirò la questione separatamente ora che sembra essere almeno connesso allo Space.

image

Grazie Jay, ti contatterò più tardi questa settimana quando potrò armeggiare di nuovo con questo forum per amici. Vado a pagare alcune bollette per un po’.

1 Mi Piace

Ho avuto qualche minuto mentre aspettavo che il mio SO si preparasse, così ho pensato di controllare lo spazio. Dopo averci pensato meglio, ho capito che doveva essere quello il problema. Ho controllato con…

df -h

Oh sì, davvero pieno. Ho eseguito…

docker system prune -a

Ho eseguito…

./launcher cleanup

Grazie ancora Jay.

Infatti, ha liberato oltre 20 GB.

Ho eseguito il backup manualmente e ha funzionato!!!

Ora sto cercando di migrare tutti i file dallo storage locale a S3…

rake uploads:migrate_to_s3

Auguratemi buona fortuna! :slight_smile:

1 Mi Piace

Ho controllato alcune cose stamattina mentre aspettavo l’inizio di una riunione.

Rake non sembrava funzionare, o forse è ancora in corso. Non posso dirlo ancora. L’utilizzo dello spazio è diminuito, ma quando ho controllato manualmente alcune vecchie foto, sembrano avere ancora il vecchio URL locale. Dovrò approfondire questo aspetto.

Non sono sicuro della differenza tra rake e reback. Presumo che uno stia migrando i file e l’altro stia aggiornando i percorsi nei post. C’è altro da imparare.

Sta ancora utilizzando molto spazio in /import (1,4 GB) e /uploads (9,2 GB). Molto per il nostro piccolo pacchetto. Sto cercando di scaricare quel carico su uno storage più economico e questi sono di gran lunga i blocchi più grandi.

Qualche informazione per chiunque stia configurando la stessa cosa, questo è ciò che sta utilizzando per gli URL degli endpoint…

CDN
https://XXXXXX-storage.sfo3.cdn.digitaloceanspaces.com/original/2X/0/15740f130209eb1a6a4f147076eaa20e70a9772d.zip

ORIGIN
https://XXXXXX-storage.sfo3.digitaloceanspaces.com/original/2X/0/15740f130209eb1a6a4f147076eaa20e70a9772d.zip

L’unica differenza è il .cdn nell’URL. Devo aggiornare le mie impostazioni.

Da Copilot…
_________\_

Per ribollire (rebake) i post dopo aver modificato il link CDN in Discourse, è necessario eseguire l’attività rake di ribollitura in modo che tutto l’HTML del post cotto venga aggiornato con i nuovi URL degli asset.

Ecco il processo:


1. Entra nel container

Shell

cd /var/discourse

./launcher enter app

Mostra altre righe


2. Esegui l’attività di ribollitura

Shell

rake posts:rebake

Mostra altre righe

Questo farà:

  • Ricostruirà tutti i post utilizzando le impostazioni correnti (incluso il tuo nuovo s3_cdn_url).

  • Aggiornerà l’HTML cotto in modo che immagini e caricamenti puntino al CDN.


Opzionale: Accelerare

Se hai un sito di grandi dimensioni, puoi eseguirlo a lotti:

Shell

rake posts:rebake[1000]

Mostra altre righe

Questo ribolle 1.000 post alla volta.


3. Verifica

Controlla alcuni post con immagini o caricamenti per confermare che ora utilizzino l’URL CDN.

_________\_
Sembra che sia in esecuzione. Controllerò più tardi.

image

Vado a fare le ciambelle.

Questo esegue il rebake, ma non solo 1.000 alla volta. Li esegue tutti e ignora la parte \[1000\]. Forse la mia sintassi non è del tutto corretta lì.

Un altro promemoria per me stesso più che per chiunque altro. Stavo cercando questo URL nel menu perché lo avevo invertito ( .cdn.sfo3. invece del contrario - il che ovviamente ha rotto l’SSL). Non riuscivo a trovare l’impostazione cercando. Poi ho trovato una finestra che avevo già aperta. L’ho aggiornata e ho provato a salvare e ho ottenuto questo…

image
Dimentico che una volta che le impostazioni vengono aggiunte in app.yml, scompaiono dal menu delle impostazioni di amministrazione. Ora ricordo.

Il rebake sembra aver funzionato, avevo solo l’URL sbagliato. Si sta aggiornando ora.

Sono ancora a meno di 50 file nel mio spazio di archiviazione di Space, quindi il rake dei file non funziona. :thinking:

OK. Pensavo fosse una piccola svolta qui. Ho finalmente capito qual era il problema…

“non è stata trovata la chiave prevista durante l’analisi di una mappatura a blocchi alla riga 106 colonna 3”

Scorrendo alcune discussioni, ho visto questo…

Ho aperto il mio e cosa vuoi che ti dica, c’erano degli spazi.

Sono sicuro di averli messi pensando che non fosse un problema. Li ho rimossi. Penso che fosse principalmente quello prima di “hooks:” a cui si riferiva.

È stato ricostruito correttamente. Grazie @RGJ

Tuttavia, c’è ancora qualcosa che non va.

Non vedo ancora aumentare il conteggio degli elementi in Spaces, quindi non sembra che stia ancora caricando i file /uploads su ‘S3’. Questa era una cosa che mi aveva lasciato perplesso, quindi sono contento che sia risolta. Ma sono di nuovo alla schermata di caricamento.

Inoltre, con quello abilitato, ottengo solo la schermata di caricamento.

L’ho commentato di nuovo…

Ricostruito di nuovo. Uguale.

Ho commentato le impostazioni S3 di Spaces.

Ricostruito di nuovo.

Funziona

  • Caricamento del forum
  • Caricamento delle immagini
    • Nuove che usano Spaces - Non CDN
    • Vecchie che usano l’archiviazione locale

Non funziona

  • I file non vengono caricati su Spaces
  • Il link CDN non viene utilizzato per il caricamento delle immagini
  • Se DISCOURSE_S3 e after_assets_precompile non sono commentati, il forum rimane bloccato sul caricamento in un browser

Ho esaurito le idee. Sto girando a vuoto.

Dovrò lasciar perdere per un po’. Almeno eviterà che lo spazio diventi un problema in futuro, dato che i nuovi caricamenti e i backup ora vanno su Spaces.