I am installing this on the production server, which I already have a website running on port 80.
How do I specify a different port to install Discourse?
Currently it won’t let me install and says:
# ./discourse-setup
Port 80 appears to already be in use.
If you are trying to run Discourse simultaneously with another web
server like Apache or nginx, you will need to bind to a different port
See https://meta.discourse.org/t/17247
However the above link says “assumes you already have Discourse working”, but I don’t.
Yes, that does appear to be something of a chicken-and-egg problem… what the discourse-setup script does, more-or-less, is just copy samples/standalone.yml to containers/app.yml and edit a bunch of stuff in response to your answers to a bunch of questions. You can do the same thing yourself – copy the file, edit to suit. It’s how all installs used to be done before @codinghorror decided he wanted to show he could write bash scripts with the best of 'em.
what is it that actually isn’t working when using different ports? did it some months ago for a little test install and can’t see any issues …
now would have to do a more serious installation and am not sure if i should bother doing the nginx-proxy-thing or just change the ports as i did with the other…
It breaks some parts, and since isn’t a priority for us (you can just use a reverse-proxy + subdomain or subfolder) we won’t be spending time to add support for this.
well, what are these parts? i still couldn’t uncover any…
and for me at least - on a plesk managed server where it’s a bit harder to see what’s actually happening behind the scenes - this reverse-proxying so far seems over my head… and from what i found so far most plesk related howtos and threads essentially end up using different ports as well…
That’s mostly unknown, but when you use a port and find out that it didn’t work, you’ll know. And then you can’t get help here, because it’s not supposed to work.
È ancora così nel 2020, che Discourse non può o non dovrebbe essere installato su una porta diversa da 80/443? Oppure questo problema è stato infine risolto?
Installare nginx sembra una cosa piuttosto complessa per risolvere un problema così semplice! La maggior parte dei software permette di specificare semplicemente la porta su cui deve ascoltarsi. E infatti vedo le porte http/https nel file app.yml.
È un po’ forzato definirlo un problema; al giorno d’oggi ci sono pochissimi motivi per eseguire servizi su porte non standard. È facile configurare un proxy con nginx o Traefik, e i certificati SSL gratuiti sono ovunque.
Potresti forse spiegare meglio perché è considerato un problema?
Poiché il server scolastico K-12 su cui sto cercando di installarlo limita quali software posso installare e a quali porte posso associare. Inoltre, quel server esegue già Apache sulle porte 80, 443 e 8080 per altri servizi gestiti dalla scuola.
Non riesco a immaginare perché, ai giorni nostri, un software per server Linux non supporti la definizione della porta in un file di configurazione, in modo che gli utenti possano cambiarla. È ciò che fanno tutti i software a cui riesco a pensare, dai tempi del telnet e dell’FTP fino ai moderni SSH, Apache, ecc.
Certo, quando era più difficile assegnare più indirizzi IP a un host e la configurazione basata sugli host-header era più complicata.
Ora puoi configurare un singolo certificato SAN con una serie di domini e utilizzare un reverse proxy per inoltrare il traffico a diversi socket, tutto gratuitamente gratis .
I tempi in cui era necessario eseguire applicazioni su porte non standard sono da lungo passati.
Mi è stato dato il permesso di installare un singolo pacchetto server e di utilizzare una singola porta per testare Discourse. Dire loro che dobbiamo coinvolgere altri team a livello del consiglio scolastico perché devo installare un altro software reverse proxy, dato che Discourse è hard-coded per associarsi a una porta già utilizzata da un altro team, sarebbe un ostacolo insormontabile. Non autorizzeranno mai tali modifiche.
In tal caso, le uniche opzioni sarebbero installarlo fuori sede o cercare un prodotto diverso. Un VPS da 5 dollari ti permetterebbe di testare Discourse in modo approfondito. Potresti persino riuscire a ottenere una prova gratuita.
Potrebbe valere la pena informarli su alcune delle tendenze che molti progetti stanno adottando. Le installazioni automatizzate, utilizzando tecnologie come Docker e dipendenze standard sulle porte, stanno diventando la norma.
Offriamo una prova di 3 mesi senza impegno per tutte le scuole, come indicato su COVID-19 and Discourse
Potresti semplicemente utilizzarla per i tuoi scopi di prova e, se alla fine sei costretto ad eseguire l’hosting autonomamente, non è un problema. Puoi portare con te i tuoi dati.
Come genitore che cerca di aiutare una scuola locale K-12 in questo periodo di COVID-19, convincere un intero consiglio scolastico a cambiare il modo in cui funziona la loro infrastruttura IT è… improbabile.
Per quanto riguarda l’educazione delle persone all’adozione delle tendenze che stanno utilizzando, consiglio di avere un’opzione “porta” supportata, come fanno tutti gli altri software per server Linux, in modo che le persone possano cambiare facilmente la porta TCP senza dover installare anche proxy inversi.
Grazie per quel link sul covid-19, Sam. Farò sapere loro. Non riesco a immaginare che mi sarà consentito apportare ulteriori modifiche al loro server, quindi spero che seguano quella strada.
Un tempo ero un professore universitario che ha cercato di fare proprio questo per molto tempo, quindi so di cosa stai parlando. La soluzione più semplice sarà ospitare il servizio esternamente. Speriamo che abbiano la larghezza di banda necessaria e che non ci siano regole che impongono che i dati debbano essere archiviati nel campus.
Se preferisci l’auto-ospitazione invece di utilizzare il servizio offerto da cdck, posso fornirti un’installazione gratuita su DigitalOcean con Mailgun. Probabilmente sarà più semplice registrare il tuo dominio, a meno che i tecnici non siano disposti a creare per te una serie di record DNS.
Penso che abbiamo perso la finestra di opportunità per completare questo progetto. Il preside ha ora cancellato il progetto, affermando che le soluzioni devono provenire dal consiglio scolastico e che non posso installare questo sul server. Valeva la pena tentare. A quanto pare, il consiglio scolastico sta valutando l’uso di Microsoft Teams come soluzione.