Ciao a tutti!
**Questo è il mio primo post. **
Sono un nuovo utente di Discourse proveniente da phpBB.
Due settimane fa, ho installato Discourse in un container Docker usando Nginx, poiché Apache usa le porte 80 e 443 per impostazione predefinita. Ho seguito attentamente i passaggi delineati nelle guide di installazione e nella configurazione multisito di Nginx.
Sono riuscito a eseguire e utilizzare il forum per una settimana, accedendo solo occasionalmente per familiarizzare con la piattaforma. Quando ho chiesto a uno degli utenti di registrarsi e testarlo, il forum è andato in crash il giorno successivo. Il browser ha visualizzato il messaggio: “Il software che alimenta questo forum di discussione ha riscontrato un problema imprevisto”. Non sono riuscito a risolverlo, quindi ho reinstallato l’intero forum da zero e poi ho ripristinato i thread dall’ultimo backup disponibile. Questo è successo giovedì scorso. Dopo tutto questo, il forum è tornato online e funzionante. Ora, è di nuovo online con un errore Nginx 502 Bad Gateway. Sono andato direttamente a ricostruire l’app e si è bloccata di nuovo con l’errore:
Pups::ExecError: cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate' failed with return #<Process::Status: pid 580 exit 1>.
La stessa cosa è successa più e più volte la scorsa settimana e mi ha portato a reinstallare tutto da zero. Il forum è praticamente inattivo perché non l’ho ancora reso pubblico. Ho paura dell’idea che se continua a bloccarsi senza attività, cosa potrebbe succedere con un gruppo di utenti più numeroso? Esegui questi comandi: ./launcher enter app
**cd /var/www/discourse**
**su discourse -c 'bundle exec rake db:migrate'**
E nella risposta, vedo questo che ha attirato la mia attenzione:
connection to server on socket "/var/run/postgresql/.s.PGSQL.5432" failed: FATAL: the database system is starting up
Ho provato a riavviare Postgress manualmente ed eseguire nuovamente la ricostruzione, ma il processo è stato interrotto di nuovo con questo messaggio di errore:
FAILED
--------------------
Pups::ExecError: if [ -f /root/install_postgres ]; then
/root/install_postgres && rm -f /root/install_postgres
elif [ -e /shared/postgres_run/.s.PGSQL.5432 ]; then
socat /dev/null UNIX-CONNECT:/shared/postgres_run/.s.PGSQL.5432 || exit 0 && echo postgres already running stop container ; exit 1
fi
failed with return #<Process::Status: pid 18 exit 1>
Location of failure: /usr/local/lib/ruby/gems/3.3.0/gems/pups-1.2.1/lib/pups/exec_command.rb:132:in `spawn'
exec failed with the params {"tag"=>"db", "cmd"=>"if [ -f /root/install_postgres ]; then\n /root/install_postgres && rm -f /root/install_postgres\nelif [ -e /shared/postgres_run/.s.PGSQL.5432 ]; then\n socat /dev/null UNIX-CONNECT:/shared/postgres_run/.s.PGSQL.5432 || exit 0 && echo postgres already running stop container exit ; 1\nfi\n"}
bootstrap failed with exit code 1
Non sono un utente esperto per identificare l’errore, ma sospetto che Postgres si bloccherà a un certo punto. Questo mi ha portato a riavviare tutto e ricominciare da capo la scorsa settimana, ma non credo che questa sia una pratica comune o sana per chiunque.
Discourse è in esecuzione su un server con 4 core, 6 GB di RAM e 180 GB di spazio su disco. Attualmente sto eseguendo solo questa installazione di Discourse, quindi per quanto ne so, non sono limitato dall’hardware.