HTTPS: problema durante la configurazione della certificazione SSL

Ciao!

Stavo cercando di abilitare HTTPS per il mio sito seguendo questo ottimo tutorial. Tutto è andato bene fino a quando ho provato a ricompilare l’app, digitando ./launcher rebuild app.

Ho eseguito discourse-doctor per cercare di capire il problema e alla fine ho trovato qualcosa:

==================== FINE LOG RICOMPILAZIONE ====================
Ricompilazione dell'app non riuscita.

Verifica del nome di dominio . . .

Connessione a discourse.mydomain.com riuscita.
Probabilmente dovresti rimuovere eventuali plugin non standard e ricompilare.
Tentativo di riavvio del contenitore esistente . . .

avvio del contenitore esistente
+ /usr/bin/docker start app
Errore di risposta dal demone: il driver non è riuscito a programmare la connettività esterna sull'endpoint app (some_random_characters): Errore durante l'avvio del proxy userland: listen tcp 0.0.0.0:443: bind: indirizzo già in uso
Errore: impossibile avviare i contenitori: app
Riavvio del contenitore non riuscito.

Nota: ho sostituito una lunga sequenza di caratteri con some_random_characters e il mio nome di dominio con discourse.mydomain.com.

È piuttosto strano, dato che ho seguito il tutorial alla lettera; non ho idea di come risolvere il problema.

Qualsiasi aiuto sarebbe molto apprezzato!

Buona giornata,

nekodroid

Per una diagnosi più approfondita, dovresti condividere il tuo file app.yml. Assicurati di rimuovere eventuali indirizzi email e password sensibili prima di pubblicarlo.

---
env:
  DISCOURSE_DEVELOPER_EMAILS: myemailadress@maildomain.com
  DISCOURSE_HOSTNAME: discourse.mydomain.com
  DISCOURSE_SMTP_ADDRESS: stmp.eu.mailgun.org
  DISCOURSE_SMTP_PASSWORD: smtppasswordwithoutquotes
  DISCOURSE_SMTP_PORT: 587
  DISCOURSE_SMTP_USER_NAME: postmaster@discourse.mydomain.com
  LANG: en_US.UTF-8
  LETSENCRYPT_ACCOUNT_EMAIL: myemailadress@maildomain.com
  UNICORN_WORKERS: 2
expose:
  - "80:80"
  - "443:443"
hooks:
  after_code:
    -
      exec:
        cd: $home/plugins
        cmd:
          - "git clone https://github.com/discourse/docker_manager.git"
params:
  db_default_text_search_config: pg_catalog.english
  db_shared_buffers: 128MB
run:
  -
    exec: "echo \"Inizio dei comandi personalizzati\""
  -
    exec: "echo \"Fine dei comandi personalizzati\""
templates:
  - templates/postgres.template.yml
  - templates/redis.template.yml
  - templates/web.template.yml
  - templates/web.ratelimited.template.yml
  - templates/web.template.yml
  - templates/web.ssl.template.yml
  - templates/web.letsencrypt.ssl.template.yml
volumes:
  -
    volume:
      guest: /shared
      host: /var/discourse/shared/standalone
  -
    volume:
      guest: /var/log
      host: /var/discourse/shared/standalone/log/var-log

Eccolo ~

Hai letto questa parte?

Sembra esserci un problema con la tua installazione Docker.

E perché hai riscritto completamente l’ordine degli elementi in app.yml?

In realtà avevo letto questa guida, ma mi sono bloccato al comando wget -qO- https://get.docker.com/ | sh; ricordo che diceva “uso errato del comando wget”. Quindi sono passato ai passaggi successivi e ricordo che Docker è stato installato automaticamente dopo aver digitato il comando ./discourse-setup.

Questo è probabilmente il mio problema…

Ricomincerò completamente l’installazione di Discourse dall’inizio e aggiornerò questo thread.

Grazie mille per il vostro aiuto, amici! :smiley_cat:

Sì! È stato aggiunto in un certo momento. Non sono sicuro di quando sia stato aggiunto.

Sono felice che tu sia online.

Grazie :uwu:

Comunque, ora ho un altro errore!

Ho eseguito il programma di configurazione automatica discourse-setup e, quando richiesto, ho aggiunto un indirizzo email per la crittografia di Let’s Encrypt. Ora dice quanto segue:

Verifica del nome di dominio . . .
ATTENZIONE:: Sembra che questo server non sia accessibile su discourse.apertureproject.me:443.

Anche una connessione a http://discourse.apertureproject.me (porta 80) fallisce.

Secondo questa indicazione, l’errore è dovuto a porte non aperte, e non ho assolutamente idea di come risolvere. Non vorrei lanciare il mio sito senza crittografia, quindi non disattiverò Let’s Encrypt.

AGGIORNAMENTO!

Ho trovato la documentazione del mio hosting (OVH) su come aprire le porte. Ma il mio gestore IP è vuoto, mentre dovrebbe essere riempito con diversi indirizzi IP secondo gli screenshot del documento.

Mi scuso, è in francese, ma come puoi vedere, l’elenco degli indirizzi IP è completamente vuoto.

Il test può fallire anche se non c’è alcun problema reale, così puoi vedere cosa succede.

È configurato il DNS? No. discourse.apertureproject.me non viene risolto. Devi configurare il DNS prima di poter utilizzare https.

Quale sistema operativo stai utilizzando? Quale piattaforma? (Alcune hanno le porte disattivate di default)

Se esegui nc da riga di comando, ottieni “command not found”?

D’accordo, come posso farlo?

So che riguarda i record DNS, ma che tipo di valore è, ecc.?

Per valore, intendo A, AAAA, NS, ecc.

Perché ho già aggiunto quanto segue nella categoria dei server DNS:

Grazie mille per il tuo aiuto anche ~ :smiley_cat:

È necessario un record A che punti all’indirizzo IP del tuo droplet.

L’ho fatto.

Un’altra domanda: ho un problema che non avevo mai avuto prima: ora quando digito apertureproject.me viene visualizzata la pagina di benvenuto di nginx.

Prima mostrava il messaggio di installazione riuscita di Discourse.

Si apre la pagina di installazione. È normale. Affrettati a installarlo.

Allora come lo installo? Non capisco. Non ho mai visto questa pagina prima.

Scusa, sono un po’ nuovo a tutto questo… è confuso :tired_face:

Segui solo le istruzioni.

Intendi la guida all’installazione di 30 minuti? L’ho seguita.

No, l’hai già fatto. Ora sei nella fase di registrazione dell’amministratore.

Ah… Non ci arrivo ancora x’ Cosa mi consigli di fare?

Cosa vedi quando navighi nel tuo dominio?

Benvenuti in nginx!

Se vedi questa pagina, il server web nginx è stato installato con successo ed è operativo. È richiesta un’ulteriore configurazione.

Per documentazione e supporto online, consulta nginx.org.

Il supporto commerciale è disponibile su nginx.com.

Grazie per aver scelto nginx.

No, vedo la pagina di registrazione. Pulisci la cache e la cronologia del browser, poi riprova.