Gentile @Ed_Bobkov,
Puoi realizzare l’“essenza” di ciò che desideri in un modo “non supportato” costruendo Discourse con (1) la tua immagine Docker base personalizzata e (2) una versione forkata del codice sorgente di Discourse su GitHub, se ritieni assolutamente necessario, eseguendo un fork del codice sorgente di Discourse.
In tal caso, dovrai:
- Modificare il file Dockerfile e aggiungere il tuo repository sorgente forkato di Discourse
- Modificare lo script launcher e aggiungere un’immagine Docker base alternativa
Vedi questa riga nel file Dockerfile di Discourse:
git clone https://github.com/discourse/discourse.git &&\
e questa riga nello script launcher:
image="discourse/base:2.0.20200512-1735"
Se esegui un registro Docker privato, puoi caricare l’immagine base di Discourse (di tua scelta) nel tuo registro privato, ad esempio:
image="localhost:5000/base:2.0.20200512-1735"
Allo stesso modo, se forki Discourse, puoi utilizzare quel fork nel file Dockerfile (sopra), ad esempio:
git clone https://github.com/tuo_account_git/discourse.git &&\
Questo ti aiuterà a gestire sia l’immagine Docker base che il codice di build.
Naturalmente, questo non è raccomandato perché non beneficerai di tutte le correzioni di bug e gli aggiornamenti di sicurezza (e funzionalità) forniti da Discourse; inoltre, questo metodo non è supportato né raccomandato.
Spero che questo ti sia utile, @Ed_Bobkov
Nota: Con questo metodo, stai comunque ricompilando Discourse; ma hai il controllo su (1) la versione dell’immagine Docker base e (2) il codice del repository GitHub di Discourse; e sei “da solo” perché questo metodo non è supportato né raccomandato, per quanto ne so.
Vedi anche: