Я купил SSL-сертификат и следовал инструкциям по адресу:
Разрешить SSL / HTTPS для вашей установки Discourse Docker - Документация / Самостоятельное хостинг - Discourse Meta
Включая размещение файлов ssl.key и ssl.crt в /var/discourse/shared/standalone/ssl/ и добавление дополнительных шаблонов в app.yml.
Сайт работал идеально, но после включения SSL он перестал отвечать и выдаёт ошибку «Не удалось подключиться» или «Сервер не найден».
2024/06/13 09:25:08 [emerg] 5152#5152: не удалось загрузить сертификат "/shared/ssl/communities-dev.np.norton.com.cer": PEM_read_bio_X509_AUX() failed (SSL: error:0909006C:PEM routines:get_name:no>
2024/06/13 09:25:09 [warn] 5182#5182: директива "listen ... http2" устарела, используйте директиву "http2" вместо неё в /etc/nginx/conf.d/discourse.conf:60
Вот мой файл app.yml
##
## После внесения изменений в этот файл вы ОБЯЗАНЫ выполнить пересборку
## /var/discourse/launcher rebuild app
##
## БУДЬТЕ ОЧЕНЬ ОСТОРОЖНЫ ПРИ РЕДАКТИРОВАНИИ!
## YAML-ФАЙЛЫ ЧРЕЗВЫЧАЙНО ЧУВСТВИТЕЛЬНЫ К ОШИБКАМ В ПРОБЕЛАХ И ВЫРАВНИВАНИИ!
## посетите http://www.yamllint.com/, чтобы при необходимости проверить этот файл
templates:
- "templates/postgres.template.yml"
- "templates/redis.template.yml"
- "templates/web.template.yml"
## Раскомментируйте следующую строку, чтобы включить прослушивание IPv6
#- "templates/web.ipv6.template.yml"
- "templates/web.ratelimited.template.yml"
## Раскомментируйте эти две строки, если хотите добавить Lets Encrypt (https)
- "templates/web.ssl.template.yml"
- "templates/web.letsencrypt.ssl.template.yml"
## какие TCP/IP-порты должен открывать этот контейнер?
## Если вы хотите, чтобы Discourse использовал порт совместно с другим веб-сервером, например Apache или nginx,
## см. https://meta.discourse.org/t/17247 для деталей
expose:
- "80:80" # http
- "2222:22"
- "443:443" # https
## Адрес http или https CDN для этого экземпляра Discourse (настроен на получение)
## см. https://meta.discourse.org/t/14857 для деталей
#DISCOURSE_CDN_URL: https://discourse-cdn.example.com
## ID аккаунта и лицензионный ключ Maxmind для геопоиска по IP-адресам
## см. https://meta.discourse.org/t/-/173941 для деталей
#DISCOURSE_MAXMIND_ACCOUNT_ID: 123456
#DISCOURSE_MAXMIND_LICENSE_KEY: 1234567890123456
DISCOURSE_USE_SSL: true
DISCOURSE_SSL_CERTIFICATE_PATH: /var/discourse/shared/standalone/ssl/domain-name.cer
DISCOURSE_SSL_KEY_PATH: /var/discourse/shared/standalone/ssl/domain-name.key
DISCOURSE_SSL_CA_PATH: /var/discourse/shared/standalone/ssl/intermediate.cer
## Контейнер Docker не хранит состояние; все данные сохраняются в /shared
volumes:
- volume:
host: /var/discourse/shared/standalone
guest: /shared
- volume:
host: /var/discourse/shared/standalone/log/var-log
guest: /var/log
Пожалуйста, кто-нибудь помогите.