==================== ТЕСТ ПОЧТЫ ====================
Для надежного теста получите адрес на http://www.mail-tester.com/
Отправка письма на REDACTED . . .
Тестирование отправки на callumokane123@gmail.com с использованием support@maniabots.xyz:REDACTED@smtp.zoho.com:587.
Соединение с SMTP-сервером успешно.
Отправка на callumokane123@gmail.com . . .
Отправка письма не удалась.
==================== ГОТОВО! ====================
И я не получаю письмо с активацией для настройки аккаунта.
Я предполагаю, что ваш форум называется forum.maniabots.xyz и отправляет письма с адреса noreply@forum.maniabots.xyz, но ваш почтовый сервер не позволяет этого сделать. В файле app.yml есть строка внизу, которую можно изменить для настройки адреса. Вам нужно отредактировать её вручную.
## Любые пользовательские команды для выполнения после сборки
run:
- exec: echo "Начало пользовательских команд"
## Если вы хотите установить адрес электронной почты 'From' для первой регистрации, раскомментируйте и измените:
## После получения первого письма с регистрацией снова закомментируйте эту строку. Она должна выполняться только один раз.
- exec: rails r "SiteSetting.notification_email='support@maniabots.xyz'"
- exec: echo "Конец пользовательских команд"
Я могу настроить для вас Mailgun, и всё будет работать. Существует сотня различных причин, по которым ваш собственный почтовый сервер может не работать.
Всем привет,
кто-нибудь нашел решение этой проблемы?
Я настроил Postfix на своем Docker-хосте для исходящей почты. Всё работает отлично, когда отправляю письма через SSH с помощью команды mail, но контейнер Discourse падает с той же ошибкой, что и у автора оригинального поста. Я воспользовался подсказкой из этой темы: How to set SMTP config to use localhost?, и благодаря ей мне удалось избавиться от ошибки аутентификации в контейнере Discourse (я не передаю ему никаких логина/пароля для подключения к почтовому серверу), но теперь получаю ошибку «отправка письма не удалась». Есть какие-то идеи?
Я и не подозревал, что настройка почтового сервера станет самой сложной частью моего пути с Discourse… Установка Discourse просто безупречна и продумана до мелочей, в отличие от любой настройки почтового сервера под Linux.
Именно поэтому все инструкции по установке рекомендуют не пытаться делать это самостоятельно. Запуск собственного почтового сервера сейчас крайне сложен.
Скорее всего, Discourse использует имя хоста для адреса отправителя, а ваш почтовый сервер блокирует такие письма. Однако причин сбоя может быть десятки, и все они выходят за рамки той помощи, которую можно получить здесь.
Проблема заключалась в том, что Discourse не мог подключиться к моему серверу Postfix из Docker. Технически соединение приходило из другой сети, а Postfix не включал эту сеть в список разрешённых. Достаточно добавить сеть Docker (в моём случае 172.17.0.0/16) в параметр mynetworks в конфигурации Postfix, и всё заработает!
Сначала нужно проверить, может ли Docker вообще подключиться к вашему Postfix (то есть, выполняется ли соединение до проверки разрешённых сетей в Postfix). Не забудьте проверить конфигурацию Postfix в параметре inet_interfaces. Я установил значение all, так как localhost не подойдёт для Discourse в Docker.
Если всё ещё не работает — проверьте логи Postfix. В моём случае они находятся в файле /var/log/mail.log.
Надеюсь, это поможет кому-то в будущем. У меня ушло много дней, чтобы всё запустить, но теперь я больше не полагаюсь на платные почтовые сервисы (я даже хотел их использовать, но не смог заставить их работать) и всё это бесплатно (не забудьте добавить SPF-записи для вашего домена! Иначе Gmail и другие почтовые провайдеры заблокируют ваши письма — они даже не попадут в спам, а будут просто недоставлены).