Назад | Перейти на главную страницу

GitLab: почта SMTP работает только с консоли

У меня на виртуальной машине установлен Linux Ubuntu 16.04.1. Я установил GitLab 8.12.6, следуя инструкциям с сайта GitLab, и столкнулся с проблемами при настройке Gitlab для отправки писем.

Я хочу использовать SMTP-сервер с другим доменным именем, отличным от GitLab-сервера. Конфигурация была сделана в соответствии с примеры предоставлены GitLab.

Я следил за официальные советы по отладке от GitLab.

Как и ожидалось, ActionMailer::Base.delivery_method возвращается => :smtp; и Мне удалось отправить почту с помощью Notify.test_email метод. Тем не менее, новые пользователи по-прежнему не получают подтверждения по электронной почте.

В разделе «Администрирование»> «Мониторинг> Фоновые задания» ничего особенного не отображается. Панель управления аккуратная (нет сбоев / занято / ...). Журналы не показывают никаких проблем с электронной почтой. Я даже вижу:

Отправлено письмо на xxx@yyy.com (897,3 мс)

Проверка работоспособности сообщает, что все в порядке.

Единственный удивительный элемент заключается в том, что запущенный процесс sidekiq - это git и показывает только вопросительные знаки под PID / CPU / MEM / STAT / ...

Я удивлен, что я могу отправлять письма из консоли GitLab и все равно не могу отправлять сообщения самостоятельно.

Какие дальнейшие действия вы рекомендуете для решения этой проблемы?

РЕДАКТИРОВАТЬ

Я просмотрел журналы GitLabs (docs.gitlab.com/ee/administration/logs.html) и ничего не нашел.

Я хотел понять, является ли почтовый сервер причиной проблемы. (Я не могу получить доступ к его журналам.) Поэтому я настроил GitLab на использование моей почты GMail в качестве smtp-сервера. В моем GMail включена двухфакторная аутентификация, поэтому я создал токен. GMail позволяет отображать, когда токен использовался в последний раз.

После повторной настройки сервера GitLab я запросил новое письмо с подтверждением (server_name.com/users/confirmation/new) и ничего не получил. Интересно то, что токен никогда не использовался.

После этого я проверил конфигурацию GMail с помощью консоли администратора: токен был использован, и я получил почту.

Из этого я делаю вывод, что GitLab даже не пытается получить доступ к SMTP-серверу.

Электронное письмо с подтверждением регистрации было отключено. Я включил его в настройках в админке: «Отправить письмо с подтверждением при регистрации».

Непонятная часть:

Я проверял настройки электронной почты, используя форму «Запросить новое подтверждение». Эта форма отправит письмо только тем пользователям, которые были созданы, когда был включен вышеупомянутый параметр. Электронное письмо не будет отправлено другим пользователям, созданным с отключенным подтверждением, даже если они сделают явный запрос с помощью формы.

Это потому, что их адрес электронной почты уже отмечен как подтвержденный. Их запросы просто игнорируются без упоминания в файлах журнала.