Настройка почтового сервера Яндекса для Discourse

Discourse сложно настраивать (для отсылки писем-уведомлений) на внутренний почтовый сервер (если таковой уже имеется на Вашем сервер), потому что Discourse работает внутри контейнера Docker.
Намного проще настроить внешний почтовый сервер.
Я для этого сайта использую почтовый сервер Яндекса, причём в рамках услуги почта для домена
Эта услуга позвоялет настроить почтовый сервер Яндекса на работу с доменом Вашего сайта: то есть иметь почтовый адрес не <имя>@yandex.ru, а <имя>@<ваш сайт>.

Настройки подключения Discourse к почтовому серверу Яндекса указываются в секции «env» файла YML:
У меня настройки такие:

  DISCOURSE_HOSTNAME: 'discourse-forum.ru'
  DISCOURSE_SMTP_ADDRESS: smtp.yandex.ru        
  DISCOURSE_SMTP_PORT: 587                     
  DISCOURSE_SMTP_USER_NAME: admin@discourse-forum.ru
  DISCOURSE_SMTP_PASSWORD: <пароль>
  DISCOURSE_SMTP_ENABLE_START_TLS: true

В качестве пароля Вы указываее пароль к почтовому ящику.
Обратите внимание, что Discourse по умолчанию отсылает письма с какого-то нелепого постороннего адреса, поэтому почтовый сервер Янедекса не даёт Discourse отправлять письма-уведомления и возаращает диагностическое сообщение: sender address rejected: not owned by auth user.

Чтобы устраить эту проблему, надо указать в качестве адреса отправителя существующий почтовый адрес на домене сайта.
Discourse должен быть уже установлен.
Если Discourse не запущен — то запустите:

  ./launcher start <название файла YML без расширения>

Затем выполните консольную команду для контейнера Discourse:

rails r "SiteSetting.notification_email = '<адрес отправителя уведомлений>'"

Вместо <адрес отправителя уведомлений> укажите свой адрес. Повторяю: это должен быть существующий почтовый адрес на домене Вашего сайта. У меня это admin@discourse-forum.ru

После установки Discourse протестируйте почтовые уведомления.