Continuo ad avere difficoltà nell’installazione di Discourse. Ecco un altro report preparato da ChatGPT. Credo che rappresenti accuratamente la mia esperienza.
Report: Problemi con l’installazione di Discourse e servizio Sidekiq mancante
Contesto:
Abbiamo tentato un’installazione pulita di Discourse su un’istanza Vultr, con l’intenzione di impostare un deployment stabile e funzionante. Tuttavia, abbiamo riscontrato problemi significativi, in particolare con servizi mancanti come Sidekiq, che hanno impedito la consegna delle email e l’elaborazione dei job in background.
Riepilogo dei problemi riscontrati
- Versione inaspettata installata
- Invece della versione attesa
v3.4.0.beta4-dev, l’installazione ha utilizzato di defaulttests-passed, scaricando una versione potenzialmente instabile. - Il file
VERSIONera mancante, rendendo poco chiaro quale versione esatta fosse stata installata.
- Invece della versione attesa
- Servizio Sidekiq mancante
- La directory
/etc/service/sidekiqera assente all’interno del container Discourse. - Ciò ha impedito l’esecuzione di tutti i job in background (email, notifiche, attività pianificate).
- La directory
- Problemi con il repository Git di Discourse
- L’esecuzione di
git rev-parse --abbrev-ref HEADall’interno del container ha restituitotests-passed, confermando che era stata installata una versione non intenzionale. - Git ha restituito un errore “detected dubious ownership” (proprietà dubbia rilevata), che ha richiesto un intervento manuale (
git config --global --add safe.directory /var/www/discourse).
- L’esecuzione di
- Potenziali problemi di dipendenza
- Anche se viene scaricata una versione precedente di Discourse, c’è la preoccupazione che dipendenze più recenti (Ruby, Redis, Sidekiq) possano essere scaricate durante l’installazione, causando potenziali problemi di compatibilità.
- Se le dipendenze di Discourse non sono bloccate correttamente, l’installazione potrebbe comportarsi in modo incoerente tra diversi ambienti.
- Rate limiting del certificato SSL
- Un tentativo di ottenere un nuovo certificato SSL Let’s Encrypt è fallito a causa del superamento del limite di richieste.
- Ciò ha causato il mancato avvio di Nginx, poiché non riusciva a caricare il file del certificato previsto.
Prossimi passi pianificati
- Eseguire una pulizia completa e reinstallare
- Rimuovere completamente
/var/discoursee clonare nuovamente il repository. - Scaricare manualmente una versione stabile (ad esempio,
v3.4.1) prima di eseguire l’installazione. - Utilizzare
./discourse-setupinvece di affidarsi ai valori predefiniti per garantire parametri corretti.
- Rimuovere completamente
- Assicurarsi che Sidekiq sia installato
- Prima della ricostruzione, verificare che il servizio
sidekiqsia correttamente incluso nel processo di build. - Se Sidekiq è mancante dopo la ricostruzione, verificare manualmente la sua installazione tramite
bundle list | grep sidekiq.
- Prima della ricostruzione, verificare che il servizio
- Bloccare le dipendenze a versioni stabili
- Evitare problemi relativi alle dipendenze utilizzando esplicitamente un’immagine Docker di Discourse nota per essere stabile (ad esempio,
discourse/discourse:2.0.20240101). - Bloccare le versioni delle gem all’interno del container (
bundle install --deployment --without test development).
- Evitare problemi relativi alle dipendenze utilizzando esplicitamente un’immagine Docker di Discourse nota per essere stabile (ad esempio,
- Ritentare l’emissione del certificato SSL
- Attendere il reset del limite di richieste di Let’s Encrypt e riprovare la generazione del certificato SSL.
- Se i problemi persistono, considerare l’utilizzo temporaneo di un certificato autofirmato per la risoluzione dei problemi.
Richiesta di feedback
Considerate queste sfide, apprezzeremmo il contributo del team e della community di Discourse riguardo a:
- Sidekiq mancante da
/etc/service/in un’installazione pulita – Qualcun altro ha riscontrato questo problema? - Migliori pratiche per garantire la stabilità delle dipendenze – Esiste un modo consigliato per bloccare le versioni delle dipendenze per le installazioni di Discourse?
- Potenziali problemi con l’installazione predefinita di
tests-passed– Potrebbe esserci un problema con il modo in cui vengono recuperate le versioni?
Qualsiasi intuizione sarebbe utile prima di procedere con la reinstallazione. Grazie in anticipo!