L'immagine Docker discourse/discourse è considerata sicura e pronta per la produzione?

Ciao!
Mi sono registrato solo per ringraziarvi tutti per il vostro aiuto, in particolare @featheredtoast.
Sono quasi riuscito a farlo funzionare, ma l’invio delle email non andava.
Immagino fosse perché uso Caddy come reverse proxy.

Quindi ora sono tornato a usare Discourse separatamente dagli altri servizi nel mio setup docker-compose.

Sapete come potrei farlo funzionare con Caddy? Immagino di dover configurare un esempio con socket, ma non so come modificare il file app.yml all’interno della configurazione di Discourse in docker-compose.

Un saluto cordiale,
Y

A meno che tu non stia usando Caddy per proxyare le tue email in uscita, non credo che sia correlato.

Non è necessario configurarlo con un socket; puoi semplicemente fare riferimento al nome del container Docker e/o al suo indirizzo IP. Discourse working with jwilder /nginx proxy & acme-companion - #7 by Steve_Emerson parla dell’uso del template con socket e di molte altre cose.

Quindi, per rispondere brevemente: no, non direttamente tramite docker-compose. È una funzionalità che mi piacerebbe vedere, ma il piano è consentire a chiunque di creare un’immagine base personalizzata che possa essere condivisa pubblicamente per fare avanzare le cose. La creazione di un plugin richiede di clonare il plugin, eseguire bundle install, npm e ricompilare Ember… Queste operazioni non dovrebbero essere eseguite all’avvio.

L’idea è quindi permettere alle immagini di essere costruite esattamente come discourse/discourse, utilizzando lo stesso file app.yml delle versioni supportate di Discourse.

Come esempio, sto costruendo la mia immagine personale con resenha aggiornando il file app.yml di base per includere il plugin qui e poi caricandola su un registro Docker esterno (pubblico!).

Se stai utilizzando un servizio di posta esterno, non credo che il tuo reverse proxy Caddy sia il problema. A differenza delle attuali build del launcher, l’immagine discourse/discourse non ti solleciterà a configurare le variabili d’ambiente per la posta (anche se è comunque necessario farlo) – ti consiglio di verificare quelle per prima cosa.

Sono riuscito a modificare il limite di dimensione del caricamento:

cat fix-upload-size.sh (che deve essere reso eseguibile con chmod +x):

#!/bin/sh
sed -i 's/client_max_body_size .*;/client_max_body_size 500m;/' /etc/nginx/conf.d/discourse.conf

in docker-compose.yml:

    volumes:
     - ./fix-upload-size.sh:/etc/runit/1.d/fix-upload-size

Sono riuscito a creare un’immagine, ma ‘solo’ utilizzando la versione ESR. Quando uso qualcosa di più recente, il processo di build richiede un database e un’istanza di Redis. È intenzionale?

C’è un modo per aggiornare Discourse all’ultima versione utilizzando questa immagine?

La sto utilizzando per il forum del gruppo di ricerca della mia facoltà e vorrei aggiornare all’ultima versione di Discourse, ma l’immagine non è stata aggiornata da marzo. Qual è il metodo consigliato per l’aggiornamento?

Questo è stato un effetto collaterale involontario dell’aggiunta di una chiamata per la pulizia degli aggiornamenti web bloccati; sto cercando di risolverlo presto tramite FIX: run clear_stuck_web_upgrades during precompile stage · Pull Request #1055 · discourse/discourse_docker

Fantastico, grazie!

Ma ho un’altra domanda: sto usando Azure for Students e sto utilizzando Container Apps. Se in qualche modo eseguo un aggiornamento all’interno dell’app, temo che, se l’istanza su cui è in esecuzione Discourse si guasta per qualche motivo, il nostro forum potrebbe andare in tilt, perché al riavvio probabilmente tornerà alla versione precedente.

Ancora una volta, grazie mille!

Questo è un rischio: purtroppo non c’è un buon modo per evitarlo, se non assicurandosi che l’immagine sia aggiornata, sia aggiornando l’app che scaricando le immagini dal repository Docker. Sconsiglio vivamente di farlo.

Nel frattempo, sto ancora sistemando il repository Docker (c’è un altro problema da affrontare qui).