¿Problemas de instalación de Discourse independiente y cómo usar una dirección IP separada?

He estado tratando de averiguar cómo instalar Discourse junto con mis otros sitios Nginx, pero sigo recibiendo este mensaje durante la configuración:

ADVERTENCIA: El puerto 443 de la computadora no parece ser accesible usando el nombre de host: lush.gg.
ADVERTENCIA: La conexión a http://<dominio> (puerto 80) también falla.

Me aseguré de que Cloudflare NO estuviera proxyando la dirección IP. También estoy utilizando una dirección IP secundaria adjunta al servidor; ya hay un sitio web Nginx funcionando en la primera.

app.yml actualizado

templates:
  - "templates/postgres.template.yml"
  - "templates/redis.template.yml"
  - "templates/web.template.yml"
  - "templates/web.ratelimited.template.yml"
  - "templates/web.socketed.template.yml"
## Descomenta estas dos líneas si deseas agregar Lets Encrypt (https)
#- "templates/web.ssl.template.yml"
#- "templates/web.letsencrypt.ssl.template.yml"

## ¿Qué puertos TCP/IP debe exponer este contenedor?
## Si deseas que Discourse comparta un puerto con otro servidor web como Apache o Nginx,
## consulta https://meta.discourse.org/t/17247 para obtener detalles
#expose:
#- "25654:80" # http
#- "443:443" # https

conf de nginx actualizado

server {
    listen <dirección ip>:80; listen [::]:80;
    server_name <dominio>;  # <-- cambia esto

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

server {
    listen <dirección ip>:443 ssl http2;  listen [::]:443 ssl http2;
    server_name <dominio>;  # <-- cambia esto

    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;
    # eliminado del post: ssl_ciphers ...

    http2_idle_timeout 5m; # aumentado desde el valor predeterminado de 3m
    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;
    }
}

¿Qué estoy haciendo mal?

Los puertos 80/443 de tu servidor están ocupados por otro servidor nginx, por lo que Discourse no puede establecer conexiones.

Si deseas ejecutar Discourse junto con otros sitios web en el mismo servidor, utiliza esta guía:

1 me gusta

¡Sí, de hecho intenté esto primero, pero lo probaré de nuevo y contaré cómo fue!

¡La misma cosa, lamentablemente!

nginx conf

server {
    listen 80; listen [::]:80;
    server_name lush.gg;  # <-- cámbialo esto

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

server {
    listen 443 ssl http2;  listen [::]:443 ssl http2;
    server_name lush.gg;  # <-- cámbialo esto

    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; # aumentado desde el valor predeterminado de 3m
    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"
## Descomenta estas dos líneas si deseas agregar Lets Encrypt (https)
#- "templates/web.ssl.template.yml"
#- "templates/web.letsencrypt.ssl.template.yml"

## ¿Qué puertos TCP/IP debe exponer este contenedor?
## Si deseas que Discourse comparta un puerto con otro servidor web como Apache o nginx,
## consulta https://meta.discourse.org/t/17247 para más detalles
#expose:
#- "25654:80" # http
#- "443:443" # https

¡Entendido! El truco consistió en habilitar DOCKER_USE_HOSTNAME: true.

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