Problemi di installazione di Discourse standalone e come usare un indirizzo IP separato?

Ho cercato di capire come installare Discourse insieme agli altri siti Nginx, ma continuo a ricevere questo messaggio durante la configurazione:

WARNING: Port 443 of computer does not appear to be accessible using hostname:  lush.gg.
WARNING: Connection to http://<domain> (port 80) also fails.

Ho assicurato che Cloudflare NON stesse facendo il proxy dell’indirizzo IP. Sto anche utilizzando un indirizzo IP secondario associato al server; sul primo è già presente un sito Nginx.

app.yml aggiornato

templates:
  - "templates/postgres.template.yml"
  - "templates/redis.template.yml"
  - "templates/web.template.yml"
  - "templates/web.ratelimited.template.yml"
  - "templates/web.socketed.template.yml"
## Scommenta queste due righe se desideri aggiungere Lets Encrypt (https)
#- "templates/web.ssl.template.yml"
#- "templates/web.letsencrypt.ssl.template.yml"

## quali porte TCP/IP deve esporre questo container?
## Se vuoi che Discourse condivida una porta con un altro server web come Apache o nginx,
## consulta https://meta.discourse.org/t/17247 per i dettagli
#expose:
#- "25654:80" # http
#- "443:443" # https

nginx conf aggiornato

server {
    listen <ip address>:80; listen [::]:80;
    server_name <domain>;  # <-- modifica questo

    return 301 https://$host$request_uri;
}

server {
    listen <ip address>:443 ssl http2;  listen [::]:443 ssl http2;
    server_name <domain>;  # <-- modifica questo

    ssl_certificate /data/web/discourse/shared/standalone/ssl/fullchain.pem;
    ssl_certificate_key /data/web/discourse/shared/standalone/ssl/privkey.pem;
    ssl_dhparam          /data/web/discourse/shared/standalone/ssl/dhparams.pem;
    ssl_session_tickets off;
    # rimosso dal post: ssl_ciphers ...

    http2_idle_timeout 5m; # aumentato da 3m di default
    client_max_body_size 0;

    location / {
        proxy_pass http://unix:/data/web/discourse/shared/standalone/nginx.http.sock:;
        proxy_set_header Host $http_host;
        proxy_http_version 1.1;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto https;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

Cosa sto facendo di sbagliato?

La porta 80/443 del tuo server è occupata da un altro server nginx, quindi Discourse non riesce a stabilire connessioni.

Se desideri eseguire Discourse insieme ad altri siti web sullo stesso server, consulta questa guida:

1 Mi Piace

Sì, ho provato proprio questo come prima cosa, ma ci riprovo e vi faccio sapere com’è andata!

Purtroppo, la stessa cosa!

Configurazione nginx

server {
    listen 80; listen [::]:80;
    server_name lush.gg;  # <-- modifica questo

    return 301 https://$host$request_uri;
}

server {
    listen 443 ssl http2;  listen [::]:443 ssl http2;
    server_name lush.gg;  # <-- modifica questo

    ssl_certificate /etc/letsencrypt/live/lush.gg/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/lush.gg/privkey.pem;
#    ssl_dhparam          /var/discourse/shared/standalone/ssl/dhparams.pem;
    ssl_session_tickets off;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:ECDHE-RSA-DES-CBC3-SHA:ECDHE-ECDSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA;

    http2_idle_timeout 5m; # aumentato da 3m, valore predefinito
    client_max_body_size 0;

    location / {
        proxy_pass http://unix:/data/web/lush-discourse/shared/standalone/nginx.http.sock:;
        proxy_set_header Host $http_host;
        proxy_http_version 1.1;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto https;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

app.yml

templates:
  - "templates/postgres.template.yml"
  - "templates/redis.template.yml"
  - "templates/web.template.yml"
  - "templates/web.ratelimited.template.yml"
  - "templates/web.socketed.template.yml"
## Decommenta queste due righe se desideri aggiungere Lets Encrypt (https)
#- "templates/web.ssl.template.yml"
#- "templates/web.letsencrypt.ssl.template.yml"

## quali porte TCP/IP deve esporre questo contenitore?
## Se desideri che Discourse condivida una porta con un altro server web come Apache o nginx,
## consulta https://meta.discourse.org/t/17247 per i dettagli
#expose:
#- "25654:80" # http
#- "443:443" # https

Capito! Il trucco è stato abilitare DOCKER_USE_HOSTNAME: true

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.