Impossibile connettersi - nuova installazione su DO

Ho appena fatto due tentativi per installare Discourse su Digital Ocean.

Tentativo 1:
Al primo tentativo, ho seguito le istruzioni ufficiali di Github utilizzando un’immagine DO Ubuntu 22.04 LTS, droplet da 1 GB.

Ho usato un sottodominio di un dominio esistente e le credenziali di un account Mailjet esistente che funziona da anni.

Non sapevo di dover installare Docker, quindi quando ho digitato
discourse-setup
l’installer ha detto
Failed to find docker or docker.io on your PATH.
e ho premuto Invio per procedere all’installazione di Docker.

Dopo di che, l’installazione SEMBRAVA procedere bene.

È terminata con

117:M 25 May 2023 01:14:46.500 * DB saved on disk
117:M 25 May 2023 01:14:46.501 # Redis is now ready to exit, bye bye...

e alcune righe aggiuntive.

Non ero sicuro di quanto velocemente si sarebbe propagato il DNS, quindi ho inserito l’IP di DO nel mio file /etc/hosts.

Ho provato a puntare il mio browser all’URL del mio sottodominio; ho ottenuto “Can’t connect to the server”.

Ho provato a puntare il mio browser all’indirizzo IP; ho ottenuto “Can’t connect to the server”.

Così ho provato un altro tentativo.

Tentativo 2:
Ho seguito le istruzioni su linuxhandbook per utilizzare un’installazione one-click di DO dalla scheda Marketplace, che mi ha fornito un Droplet da 2 GB.

Dopo aver effettuato l’accesso tramite ssh, l’installer è partito automaticamente e sembrava funzionare senza problemi. Alla fine, ha detto
Discourse is now installed. Log into your admin account in a browser to continue configuring Discourse.

Ma di nuovo, quando ho provato a puntare il mio browser all’URL del mio sottodominio o all’indirizzo IP di DO (nuovo per questo secondo droplet), i miei browser non riescono a connettersi (ho provato Firefox e Safari).

Eseguendo
./launcher start app
mostra

x86_64 arch detected.
cadd91ccd0cd
Nothing to do, your container has already started!

discourse-doctor mostra (tra le altre cose)
Discourse container app is running
e fornisce il corretto
DISCOURSE_HOSTNAME

Cosa posso provare per far rispondere questa installazione (una o entrambe) al mio browser?
(Il secondo indirizzo IP è ancora nel mio file hosts, ma si è ANCHE propagato secondo i controlli DNS, quindi sembra che dovrebbe funzionare sia dall’URL del sottodominio che semplicemente dall’indirizzo IP.)

Grazie per qualsiasi aiuto.

Ho qualche dettaglio in più:

Per quanto ne so, non ho alcun tipo di pannello di controllo per nessuno dei droplet (né Plesk, né cPanel).

Normalmente, in una tipica configurazione di hosting condiviso, entrerei in public_html e creerei un semplice file di test come testfile.html per vedere se almeno un file HTML semplice potesse essere caricato, ma non so dove farlo (o se posso farlo) su un droplet DO.

Se ./discourse-setup è andato bene, significa che è stato in grado di risolvere il tuo dominio, quindi non c’è niente da fare al riguardo. La propagazione è già avvenuta per il tuo server a questo punto.

Nota che l’installazione di Discourse Digital Ocean con 1 clic è un unsupported-install, il che significa che è meno probabile che tu trovi supporto qui. :slight_smile:

Ti suggerisco di ricominciare da capo e usare l’installazione standard.

  1. Crea un droplet

  2. Accedi tramite SSH

  3. Esegui ping yourdomain.com e vedi se si risolve all’IP del tuo server (./discourse-setup mostrerà comunque un avviso se non lo fa).

    • Se non lo fa, attendi che lo faccia.
  4. Quando lo fa, installa Discourse usando la guida ufficiale discourse/docs/INSTALL-cloud.md at main · discourse/discourse · GitHub

Per favore, fammi sapere :slight_smile:

Naturalmente, non sono un esperto, e forse qualcuno sarà in grado di individuare il tuo problema attuale.

2 Mi Piace

Non c’è bisogno di farlo e non aiuterà. Come detto sopra, discourse-setup eseguirà un test per vedere che può comunicare con se stesso usando il nome host. Se hai modificato /etc/hosts prima di eseguire la configurazione di discourse, allora il DNS non ha funzionato e non hai ottenuto un certificato da let’s encrypt ed è per questo che il server web non si avvia. Se provi abbastanza volte, verrai limitato e dovrai aspettare una settimana o usare un sottodominio diverso.

Puoi guardare in /var/discourse/shared/logs/var-log/nginx/access.log (o qualcosa di molto simile) per vedere il problema.

La cosa più semplice a questo punto è usare un nuovo sottodominio, impostare il DNS, aspettare che si propaghi (ci sono strumenti che te lo mostreranno) e poi eseguire discourse-setup.

2 Mi Piace

Grazie a entrambi per le risposte.

Ho creato un nuovo sottodominio e un nuovo droplet e li ho utilizzati per un terzo tentativo, e ora tutto è operativo.

Quando ho eseguito ./discourse-setup durante il mio primo tentativo, non ho visto alcuna indicazione nell’output che ci fossero problemi con il dominio o SSL; è possibile che sia stato segnalato un errore e io l’abbia semplicemente perso, ma in tal caso, potrebbe essere utile rendere più evidenti questo tipo di notifiche di errore.

Sono felice di avere la mia nuova installazione di Discourse configurata e funzionante. Grazie ancora per aver aiutato un principiante.

Sarebbe possibile aggiungere una sezione a discourse/docs/INSTALL-cloud.md at main · discourse/discourse · GitHub con Suggerimenti per la risoluzione dei problemi e, in tal caso, potrei contribuire?

1 Mi Piace

Si blocca di netto. Non te lo saresti perso. La mia ipotesi è che tu abbia risolto abilmente il problema con /etc/hosts che ha soddisfatto lo script, ma non Let’s Encrypt quando è andato a ottenere un certificato. discourse-setup è uno script di shell ed è progettato per gli utenti più inesperti, quindi i suoi test sono piuttosto ingenui.

Forse vedi l’argomento di installazione standard?

MODIFICA: Beh, non c’è molto lì.

Quali consigli per la risoluzione dei problemi vuoi aggiungere? Penso che ci siano alcuni indizi lì. Indovinare che qualcuno creerà una voce /etc/hosts e bypasserà il controllo DNS è qualcosa che non ho mai sentito nessuno fare. :slight_smile: