Настройка Discourse успешно завершена, но не работает из-за ошибки SSL

Вот журнал ошибок

2024/12/14 14:04:39 [warn] 5993#5993: дубликат расширения "wasm", тип содержимого: "application/wasm", предыдущий тип содержимого: "application/wasm" в /etc/nginx/conf.d/discourse.conf:4
2024/12/14 14:04:39 [emerg] 5993#5993: не удалось загрузить сертификат "/shared/ssl/masked.cer": PEM_read_bio_X509_AUX() failed (SSL: error:0480006C:PEM routines::no start line:Expecting: TRUSTED CERTIFICATE)
2024/12/14 14:04:40 [warn] 5995#5995: дубликат расширения "wasm", тип содержимого: "application/wasm", предыдущий тип содержимого: "application/wasm" в /etc/nginx/conf.d/discourse.conf:4
2024/12/14 14:04:40 [emerg] 5995#5995: не удалось загрузить сертификат "/shared/ssl/masked.cer": PEM_read_bio_X509_AUX() failed (SSL: error:0480006C:PEM routines::no start line:Expecting: TRUSTED CERTIFICATE)
2024/12/14 14:04:41 [warn] 5997#5997: дубликат расширения "wasm", тип содержимого: "application/wasm", предыдущий тип содержимого: "application/wasm" в /etc/nginx/conf.d/discourse.conf:4
2024/12/14 14:04:41 [emerg] 5997#5997: не удалось загрузить сертификат "/shared/ssl/masked.cer": PEM_read_bio_X509_AUX() failed (SSL: error:0480006C:PEM routines::no start line:Expecting: TRUSTED CERTIFICATE)
2024/12/14 14:04:42 [warn] 5999#5999: дубликат расширения "wasm", тип содержимого: "application/wasm", предыдущий тип содержимого: "application/wasm" в /etc/nginx/conf.d/discourse.conf:4
2024/12/14 14:04:42 [emerg] 5999#5999: не удалось загрузить сертификат "/shared/ssl/masked.cer": PEM_read_bio_X509_AUX() failed (SSL: error:0480006C:PEM routines::no start line:Expecting: TRUSTED CERTIFICATE)
2024/12/14 14:04:43 [warn] 6001#6001: дубликат расширения "wasm", тип содержимого: "application/wasm", предыдущий тип содержимого: "application/wasm" в /etc/nginx/conf.d/discourse.conf:4
2024/12/14 14:04:43 [emerg] 6001#6001: не удалось загрузить сертификат "/shared/ssl/masked.cer": PEM_read_bio_X509_AUX() failed (SSL: error:0480006C:PEM routines::no start line:Expecting: TRUSTED CERTIFICATE).

Когда я проверил SSL, он оказался пустым. Я попробовал пересобрать приложение, и указанный мной адрес электронной почты для Let’s Encrypt верный.

С уважением,
Ну

Это часто случается, если вы пропускаете проверку имени хоста в discourse-setup и несколько раз пересоздаёте контейнер, из-за чего вы попадаете под ограничение частоты запросов со стороны Discourse. Возможно, у вас включён оранжевый облачный прокси Cloudflare?

Вы можете посмотреть логи, хотя их непросто найти. Если проблема в этом, решение — подождать неделю или добавить ещё одно имя хоста, как описано в статье Настройка Let’s Encrypt с несколькими доменами / перенаправлениями

Спасибо за ответ. Я использую Digital Ocean, не обходил проверку имени хоста и не делал пересборку. Я действовал согласно инструкциям на GitHub для настройки на основе Docker. Похоже, мне нужно вручную настроить Let’s Encrypt.

Также я не могу найти файл /etc/nginx/nginx.conf. Не упустил ли я что-то перед запуском скрипта установки?

-Nu

Он находится внутри контейнера. Вы можете

 ./launcher enter app

чтобы попасть внутрь. Вы можете осмотреться и найти команду, которая пытается получить сертификат. Я делаю это так редко, что никогда не помню, что это за команда. Скорее всего, вы сможете найти её здесь, если поищете.

Мое лучшее предположение всё ещё связано с проблемой DNS, но, судя по всему, вы всё сделали правильно.

Найдена корневая причина: 1. Установка не удалась, потому что в DNS IPv4 указывался правильно, а IPv6 — нет (не обновлён). 2. Digital Ocean не поддерживает SMTP-сервисы электронной почты на своих дроплетах.

Установка завершена, но получить письмо с подтверждением для администратора всё ещё не удаётся из-за ограничений Digital Ocean. Изучаем несколько вариантов.

  • Вариант с Sendgrid не сработал :disappointed_face: Неясно, является ли это техническим ограничением или моей ошибкой.

Nu

Извините, я был занят другими задачами. Кто-нибудь знает, как настроить Mailgun, SendGrid или любого другого SMTP-провайдера в Discourse, который размещен на DigitalOcean? Я заполнил данные учетных записей SMTP SendGrid (имя пользователя, пароль, SMTP-сервер, порт, email, email для ответов, SSL и т. д.) и запустил пересборку, но это не помогло.