Я наконец-то решил эту проблему.
Причиной был адрес электронной почты отправителя, который Discourse использует по умолчанию. Он формируется из имени хоста, указанного при настройке (в моём случае что-то вроде v220200xxxxxxxxxxxx.powersrv.de), что приводит к адресу отправителя noreply@v220200xxxxxxxxxxxx.powersrv.de, который отклоняется SMTP-сервером.
Так почему же я использую это неудобное имя хоста? Просто потому, что этот сервер предназначен для замены существующего, который стал слишком мал для нашего растущего сообщества Discourse. Я готовлю и тестирую новый сервер перед тем, как позже переключить настройки DNS, чтобы они указывали на этот новый сервер. Просто хочу сэкономить время на создание временных дружественных настроек DNS здесь.
Как исправить проблему?
Найдите следующие строки в конце файла app.yml:
## Если вы хотите установить адрес электронной почты «От кого» для вашей первой регистрации, раскомментируйте и измените:
## После получения первого письма о регистрации снова закомментируйте эту строку. Она должна быть выполнена только один раз.
Раскомментируйте и измените последнюю строку на адрес, который ваш SMTP-сервер принимает как действительный адрес отправителя, например:
- exec: rails r "SiteSetting.notification_email='USER@DOMAIN.TLD'"
Теперь выполните ./launcher rebuild app, чтобы изменения вступили в силу, и готово — теперь письмо с активацией отправляется, и вы можете активировать учётную запись администратора и завершить настройку.
Как я это выяснил?
Я создал новую учётную запись электронной почты у моего провайдера веб-хостинга и снова запустил настройку Discourse с этими учётными данными SMTP — и получил письмо с активацией, как и ожидалось. Так что я понял, что проблема связана с настройками SMTP (а не с чем-то другим, связанным с настройками Ubuntu / Docker / Discourse).
После активации учётной записи администратора с помощью этого другого SMTP-сервера я перешёл в настройки > электронная почта > пропущено и нашёл неудачные попытки отправки письма с активацией: 553 5.7.1 <noreply@v220200xxxxxxxxxxxx.powersrv.de>: Sender address rejected: not owned by user USER@DOMAIN.TLD
Вывод
Я хотел бы обратить внимание команды разработчиков Discourse на запрос функции Предложение — разрешить опциональную настройку системного адреса «От кого» во время установки. Пожалуйста, рассмотрите возможность тестовых установок (например, как копию для проведения некоторых тестов перед фактическим обновлением экземпляра) без дружественного адреса хоста. Это сделало бы их настройку более плавной, без необходимости редактировать app.yaml. Кроме того, на мой взгляд, хорошо предоставить администратору возможность использовать адреса электронной почты, не привязанные к имени хоста Discourse.
Спасибо ![]()
Также спасибо @codinghorror за то, что подсказали, как искать информацию о вставке блоков кода.