Dato che questo argomento è stato utile, aggiungo pure io qualcosa, anche se è vecchio di 3 anni. Oggi ho riscontrato il problema della porta in uso e sono un po’ confuso su quanto accaduto. Riporto solo la sequenza degli eventi, nel caso qualcun altro si trovi nella stessa situazione.
Contesto: sto usando Ubuntu 16.04.3 LTS (ho troppa paura di aggiornare a 18.04) e Discourse 2.3.x (non sono sicuro della versione esatta, lo spiegherò dopo :)).
Ho apportato una modifica (irrilevante) al file app.yml e ho ricompilato l’applicazione.
Ho anche notato che Ubuntu voleva riavviarsi (non ho verificato il motivo), quindi ho eseguito anche il riavvio di Ubuntu.
Alla fine ho finito con l’errore della porta in uso.
Ho scoperto che Apache2 era improvvisamente attivo, quindi l’ho disabilitato:
root@Discourse:~# sudo update-rc.d apache2 disable
insserv: warning: current start runlevel(s) (empty) of script apache2' overrides LSB defaults (2 3 4 5). insserv: warning: current stop runlevel(s) (0 1 2 3 4 5 6) of script apache2’ overrides LSB defaults (0 1 6).
Infine il forum è tornato online, poiché la porta era ora libera.
Quello che non riesco a capire è il motivo per cui è successo: da dove è arrivato Apache2?
Avrei dovuto testare il forum subito dopo il riavvio, maledizione. Ora non so se sia stato l’aggiornamento di Discourse o il riavvio di Ubuntu a causare il problema (potrei forse trovarlo in qualche log, ma non sono più molto bravo con Linux). Ho anche cercato sul forum se Discourse 2.5 installa Apache2 al giorno d’oggi.
La cosa positiva è che l’aggiornamento di Discourse era da tempo necessario. Sono solo molto riluttante ad aggiornare ultimamente, dato che negli ultimi 5 anni ho avuto problemi simili ogni due per tre. Comunque amo ancora Discourse…