Installazione di Discourse su Lightsail

Ciao a tutti, sto cercando di configurare il mio primo forum Discourse e ho bisogno di un po’ di aiuto…

Le impostazioni in app.yml sembrano tutte corrette. Ho provato a riavviare, ma Discourse non è disponibile. Qualsiasi suggerimento su come iniziare a risolvere il problema sarebbe molto apprezzato.

Non sono molto sicuro riguardo a Lightsail, ma nel caso di AWS, quando un dominio non punta correttamente al loro indirizzo IP, il 90% delle volte la colpa è dei gruppi di sicurezza. Puoi provare ad aprire le porte necessarie (80, 443, 587, ecc.) nel gruppo di sicurezza di AWS per il tuo VPS?

Grazie per la risposta. Ho aperto queste porte (la 443 e la 587 erano chiuse) e ho ricompilato l’app, ma senza successo. Sospetto che il problema sia lato DNS, ma non sono sicuro di cosa altro cambiare. Attualmente non ho configurato becomeachiron.com, solo il sottodominio. È probabile che questo possa compromettere il sottodominio, ma non sono sicuro di dove ospitarlo su Lightsail.

Come hai configurato solo il sottodominio?

Di recente siamo passati a Discourse e Amazon Lightsail (quindi ho poca esperienza).
Ho esattamente quella configurazione e sono riuscito a installare Discourse senza alcun problema.
Ho prima installato l’AMI Debian ufficiale di Amazon.
Poi ho configurato il nome host sul mio dominio (discourse.becomeachiron.com).
Quindi ho aggiornato Debian all’ultima versione:

sudo apt update
sudo apt upgrade

E ho seguito le istruzioni per installare Discourse (installando git e poi Discourse).
Nessun problema, ha funzionato.

Ho dovuto aprire la porta 443 per far funzionare HTTPS (e configurarla in Discourse).

Il problema che descrivi sembra legato al DNS e alla risoluzione degli indirizzi IP.

In Lightsail ci sono tre indirizzi IP per una macchina:

  • L’indirizzo IP privato statico, accessibile solo dalle macchine della rete interna nella stessa regione della tua.
  • L’indirizzo IP pubblico dinamico assegnato automaticamente al momento dell’avvio dell’istanza, che viene perso ogni volta che la macchina viene arrestata e che cambia quando viene riavviata.
  • L’indirizzo IP pubblico statico che puoi assegnare alla macchina. Questo indirizzo è permanente (ma viene fatturato anche se la macchina è spenta; la cifra è molto bassa, ma si paga a ore anche se la macchina non è in esecuzione).

Hai assegnato un indirizzo IP pubblico statico alla tua macchina?

Se sì, è quell’indirizzo IP che devi configurare nel tuo DNS.

Se no, devi usare l’indirizzo IP pubblico e aggiornarlo ogni volta che avvii la macchina, poiché cambia (immagino che tu possa installare un client per IP dinamico sulla tua macchina che lo faccia automaticamente, se ne trovi uno compatibile con il DNS di Amazon).

Poi devi attendere un po’ per la propagazione delle modifiche DNS.

Sembra che tu non abbia configurato il dominio:

 pfaffman@balloon:~$ dig +short discourse.becomeachiron.com @NS-1041.AWSDNS-02.ORG

non restituisce nulla. Questo link consentirà di verificare la propagazione, ma al momento non esiste alcun record del tuo sottodominio sui server dei nomi di AWS.

Non c’è alcun record perché sembra che non stia utilizzando i DNS di Amazon; afferma che funziona con i DNS di Google.

Quindi deve configurarlo su Google.

discourse.becomeachiron.com si risolve attualmente in 99.79.192.57

Grazie a tutti per le risposte. Idealmente, vorrei ospitare Discourse sul dominio principale, non su un sottodominio, ma ogni serie di istruzioni che riesco a trovare insiste sull’uso di un sottodominio. È una necessità?

Anche io sto lavorando sodo a tutto questo proprio ora :slight_smile:

Ho letto che è possibile utilizzare il dominio principale senza www o sottodominio discourse.

Tuttavia, non è la configurazione predefinita e sembra non essere così semplice; forse è meglio provare prima il metodo predefinito, come hai fatto tu.

Insisto: hai configurato un indirizzo IP statico per la tua istanza Lightsail?

Di default, è impostato come dinamico.

Se non l’hai fatto, crea un IP statico.

Vai al pannello di Lightsail, seleziona la tua istanza e apri la scheda “Network”.
Quindi seleziona “Create static IP”.

La tua istanza riceverà un nuovo indirizzo IP permanente.

Poi vai su Google DNS e registra quell’IP con il nome della tua macchina.

Ecco dove mi trovo ora:

In Lightsail

  • Ho creato un IP statico e lo ho associato alla mia istanza (grazie, fernando)
  • Ho creato una zona DNS

In Google Domains

  • Ho aggiornato i server dei nomi con quelli della zona DNS
  • Ho creato un sottodominio e lo ho puntato all’IP statico

Discourse è configurato correttamente: posso accedervi tramite l’IP pubblico. A meno che non abbia saltato qualcosa, ora aspetto che la propagazione termini.

Stai facendo qualcosa di sbagliato.

I tuoi record SOA puntano ai server DNS di AWS, non a Google, e dici di stare modificando i record DNS su Google.

becomeachiron.com
primary name server = ns-612.awsdns-12.net
responsible mail addr = awsdns-hostmaster.amazon.com
serial = 1
refresh = 7200 (2 ore)
retry = 900 (15 minuti)
expire = 1209600 (14 giorni)
default TTL = 86400 (1 giorno)

becomeachiron.com nameserver = ns-1041.awsdns-02.org
becomeachiron.com nameserver = ns-1824.awsdns-36.co.uk
becomeachiron.com nameserver = ns-216.awsdns-27.com
becomeachiron.com nameserver = ns-612.awsdns-12.net

Modifica le impostazioni DNS su Amazon DNS, oppure cambia i record SOA per puntare a Google se stai utilizzando i DNS di Google.

Esatto! Era quello che volevo dire. Immagino che avrei dovuto includere il record whois. Hai fatto un lavoro migliore nel spiegare rispetto a me.

Quindi modifica il record whois o aggiorna i server dei nomi di AWS.

Non ti avevo capito, scusa.

Sono confuso… Mi sono registrato tramite Google Domains, ma Lightsail ha generato i server dei nomi.

Puoi registrare il dominio con un registrar e utilizzare i DNS di un altro provider.

Quando acquisti un dominio, acquisti solo il nome e il record SOA che risiede sul server del registrar del dominio.

I servizi DNS sono indipendenti dal provider del dominio.
Il record SOA indica dove risiedono i tuoi server DNS.

Naturalmente, molti registrar di domini offrono servizi DNS inclusi nel prezzo, come Google Domains.

Tuttavia, hai acquistato servizi DNS con Amazon Lightsail e questo ha modificato il tuo record SOA su Google.

Io non ho acquistato servizi DNS con Amazon; sto utilizzando servizi DNS esterni (per quanto ne sappia, Amazon addebita costi per i servizi DNS).

In tal caso, devi aggiornare i record DNS autonomamente nel tuo provider (Google, nel tuo caso).
In questo caso, devi modificare il record SOA per riportarlo alla configurazione predefinita nei DNS di Google.

In alternativa, puoi utilizzare i servizi DNS di Amazon e aggiornare i record con essi. In questo caso, lasci il record SOA invariato e utilizzi gli strumenti di Amazon per modificare i record DNS.

Se stai utilizzando un servizio di posta con Amazon, è possibile che tu abbia accettato di modificare il tuo record SOA e puntarlo ai servizi di Amazon.

Ciò che ti serve in sostanza è l’indirizzo IP pubblico della VPS Lightsail, dopodiché puoi scegliere di gestire il tuo DNS dove preferisci.

Se desideri gestirlo tramite Amazon, puoi utilizzare Route 53, che ti fornirà i nameserver da aggiornare nelle impostazioni del tuo dominio presso il registrar (ad esempio Google).

In alternativa, puoi modificare il file di zona corrente (nella sezione Gestione DNS del tuo dominio) e aggiornare lì il tuo record A.

Come ho letto sopra, desideri ospitare il servizio sul dominio principale; posso aiutarti a configurarlo. È esattamente come un’installazione normale ed è perfettamente legittimo farlo, poiché a volte le persone preferiscono avere il proprio forum su un dominio diverso.

Ad esempio: il forum della community di Twitter.

Grazie ancora a tutti! Sono in attività: http://discourse.becomeachiron.com/

Sto ancora cercando di capire come funzionino esattamente questi elementi insieme – non mi occupo regolarmente di questioni DNS. Ora devo in qualche modo mettere online il mio dominio principale :slight_smile:

Sembra che tu stia utilizzando AWS Route53 per gestire il tuo DNS.

Quindi, per il dominio principale, segui questi passaggi:

  1. Crea un record Alias (A) per il dominio principale (indicato con @) puntando all’IP di Lightsail.
  2. Modifica il file app.yml per utilizzare il dominio principale.
  3. Ricompila.
  4. Esegui un remap di Discourse.

Questo è tutto ciò che devi fare.