Ciao,
sto tirandomi i capelli.
Ho seguito le istruzioni standard di installazione, ho configurato Mailjet e così via, ma l’avvio (bootstrap) fallisce ogni volta.
Ecco la configurazione, non riesco proprio a capire cosa mi stia sfuggendo.
Qualche idea?
FALLITO
--------------------
Pups::ExecError: /bin/bash -c "if [[ ! \"$LETSENCRYPT_ACCOUNT_EMAIL\" =~ ([^@]+)@([^\.]+) ]]; then echo \"LETSENCRYPT_ACCOUNT_EMAIL non è un indirizzo email valido\"; exit 1; fi" fallito con return #<Process::Status: pid 5329 exit 1>
Posizione del fallimento: /pups/lib/pups/exec_command.rb:112:in `spawn'
exec fallito con i parametri {"cmd"=>["if [ -z \"$LETSENCRYPT_ACCOUNT_EMAIL\" ]; then echo \"LETSENCRYPT_ACCOUNT_EMAIL ENV variable è richiesta e non è stata impostata.\"; exit 1; fi", "/bin/bash -c \"if [[ ! \\\"$LETSENCRYPT_ACCOUNT_EMAIL\\\" =~ ([^@]+)@([^\\.]+) ]]; then echo \\\"LETSENCRYPT_ACCOUNT_EMAIL non è un indirizzo email valido\\\"; exit 1; fi\""]}
** AVVIAMENTO FALLITO ** scorri verso l'alto e cerca i messaggi di errore precedenti, potrebbero essercene più di uno.
./discourse-doctor potrebbe aiutare a diagnosticare il problema.
Sì, sembra essere la variabile di Let’s Encrypt, ma come ho detto sopra, lo script di installazione non consente di inserire un indirizzo email. Non appena viene ricevuta la password SMTP, sembra saltare quella fase e mostra un errore.
Puoi vederlo qui…
Nome host per il tuo Discourse? [forum.uaptn.com]:
Indirizzo email per gli account amministratore? [forumadmin@uaptn.com]: xxxxxxxxe@protonmail.com
Indirizzo server SMTP? [in-v3.mailjet.com]:
Porta SMTP? [587]:
Nome utente SMTP? [b91xxxxxxxxxxxxxxxxxxde52d]:
Password SMTP? [1d2xxxxxxxxxxxxxxxxxxxxxxxxxxxx903]:
./discourse-setup: riga 438: [: troppi argomenti
Controllo del nome di dominio . . .
Connessione a forum.uaptn.com riuscita.
Sembra corretto?
Nome host : forum.uaptn.com
Email : xxxxxxxxx@protonmail.com
Indirizzo SMTP : in-v3.mailjet.com
Porta SMTP : 587
Nome utente SMTP : b91xxxxxxxxxxxxxxxxxxxxxe52d
Password SMTP : 1d2cxxxxxxxxxxxxxxxxxxx5086903
Let's Encrypt : PASSWORD (CHIAVE SEGRETA)
Premi INVIO per continuare, 'n' per riprovare, Ctrl+C per uscire:
Non è quello. Lo script passa semplicemente oltre la parte di Let’s Encrypt; non appena inserisco la password, appare quell’errore ‘riga 438: [: troppi argomenti’ e prosegue.
La tua password contiene caratteri speciali? Prova a inserire una password finta senza caratteri speciali, come 123456, e verifica se viene richiesta l’email di Let’s Encrypt.
Forse lo script non chiede perché l’indirizzo è già presente nel tuo app.yml e poi genera l’errore a causa di questo (perché l’email è già errata nel file app.yml).
Prova a modificare manualmente l’email nel file e verifica se funziona (nano containers/app.yml).
La riga che ha generato l’errore verifica se l’email di Let’s Encrypt non è vuota per mostrarla e chiederti se vuoi modificarla, ma poiché la condizione non racchiude la variabile tra virgolette doppie, il valore presente nel tuo app.yml viene espanso, causando l’errore Too many arguments.
Penso che se il team di Discourse avesse racchiuso la variabile tra virgolette doppie avrebbe aiutato a evitare casi del genere, ma comunque dovrebbero essere rari (probabilmente la prima volta che esegui la configurazione, il valore è stato impostato in modo errato).