Impossibile installare Discourse dietro Nginx-proxy-manager

Ho provato a distribuire (in locale, tramite un host hypervisor) una VM con Ubuntu Server 18.04 per eseguire Discourse.

Il problema si verifica quando provo a inoltrare il traffico diretto al dominio xyz verso l’indirizzo x.x.x.x, utilizzando certificati installati/creati localmente su nginx-proxy-manager.

Il programma di installazione di Discourse rifiuta di riconoscere che la porta 443 sia aperta e, quando verifica l’autenticità del dominio, fallisce ogni volta segnalando che la 443 è irraggiungibile, mentre la 80 lo è.

Per quanto riguarda i test effettuati manualmente, ottengo errori 502 tramite Chrome, che indicano che il server web è DOWN. Il che è strano. Deve essere alla ricerca di un file o qualcosa del genere durante l’esecuzione di quel test. ¯\_(ツ)_/¯

Ho provato a impostare manualmente le opzioni di configurazione in app.yml come descritto nella documentazione ufficiale per l’hosting insieme ad altre applicazioni. Ho anche provato a costruire manualmente tramite ./discourse-doctor, ma senza successo. Il contenitore Docker si avvia, ma nulla viene visualizzato nel browser web (errore NGINX 502).

Per quanto riguarda la configurazione del reverse proxy NGINX, non ho molte opzioni. È tutto basato su GUI, il che semplifica il processo. Per la maggior parte, altri servizi come Bitwarden, NextCloud e Restya hanno funzionato subito fuori dalla scatola, ma Discourse sembra essere molto schizzinoso o qualcosa del genere, perché indipendentemente da ciò che ho provato, nulla sembra funzionare.

A livello di configurazione, l’ho impostato così:

E per SSL sto utilizzando un certificato applicato dal server NGINX-Proxy sopra Discourse o qualsiasi altra applicazione stia eseguendo.

(Per chiarire, il server reverse proxy è una VM SEPARATA che esegue anch’essa Ubuntu 18.04 e Nginx-Proxy-Manager, una soluzione per gestire più configurazioni di Reverse Proxy NGINX.)

Se stai configurando un reverse proxy, sei da solo. Dovrai modificare app.yml di conseguenza ed eseguire ./launcher rebuild app.

OK, l’ho capito.

Per utenti come me che hanno una VM / Host / Qualsiasi cosa separata per eseguire il proprio server NGINX, non è necessario attivare flag o funzionalità personalizzati.

Basta puntare il proprio dominio al proprio IP, configurare NGINX per instradare quel nome host al server Discourse e dovrebbe funzionare semplicemente. (Tieni presente che se usi SSL, configuralo di conseguenza.)

Non riesco a credere di aver sprecato più di 5 ore su questo, smanettando e sperimentando solo per scoprire che le impostazioni predefinite funzionavano perfettamente.