Используйте Caddy вместо NGINX в качестве обратного прокси

Для справки, вот текущие шаги для настройки без Docker с использованием Caddy в качестве обратного прокси:

1) Отредактируйте файл конфигурации Discourse

  • Закомментируйте сертификаты
    templates:
    #  - "templates/web.ssl.template.yml"
    #  - "templates/web.letsencrypt.ssl.template.yml"
    
  • Измените сопоставление портов и отключите сопоставление 443
    expose:
    - "8080:80"   # http
    # - "443:443" # https
    
  • Принудительно включите HTTPS для раздачи статических файлов
    env: 
    DISCOURSE_FORCE_HTTPS: true
    

2) Пересоберите Discourse

./launcher rebuild app

3) Настройте Caddy

  • Установите Caddy, используя стандартные параметры из официальной документации: Install — Caddy Documentation

  • Отредактируйте файл /etc/caddy/Caddyfile

    forum.example.com {
          reverse_proxy localhost:8080
    }
    

    Если у вас несколько сайтов, просто перечислите ваши домены:

    forum.example.com, forum2.example.com, forum3.example.com {
          reverse_proxy localhost:8080
    }
    

    Также вы можете выполнить systemctl status caddy, чтобы проверить расположение файла конфигурации по умолчанию.

4) Запустите Caddy

systemctl start caddy

Перезагрузите конфигурацию после внесения изменений:

cd /etc/caddy
caddy reload
4 лайка