Gitlab Sefl-управляемая электронная почта для устранения неполадок - PullRequest
0 голосов
/ 20 февраля 2020

у нас есть бесплатная версия Gitlab с самостоятельным управлением (GitLab Enterprise Edition 12.7.5-ee) в Ubuntu 18.04 LTS в частной сети ourdomain.com, мы следовали руководству по установке, доступному на официальном сайте Gitlab.

После завершения установки мы начали настраивать электронную почту. Обратите внимание, что сервер ретрансляции внутри нашего домена частной сети не требует аутентификации и использует порт по умолчанию, поэтому настройка должна быть простой, как мы думали, но мы ошиблись! Ниже я объясню в подробности шагов, которые я пробовал, и я надеюсь, что кто-то может сказать мне, что я пропустил или неправильно настроил:

  1. создайте резервную копию файла gitlab.rb
  2. и добавьте следующие строки в gitlab рб файл.
# gitlab_rails['smtp_enable'] = true
# gitlab_rails['smtp_address'] = "relay IP address"
# gitlab_rails['smtp_port'] = 25
# gitlab_rails['smtp_domain'] = "ourdomain.com"
# gitlab_rails['smtp_authentication'] = false
# gitlab_rails['smtp_enable_starttls_auto'] = true
# git_data_dirs({ "default" => { "path" => " /media/ibrahim/# Data/gitlab/git-data" } }) 
sudo gitlab-ctl перенастроить, и, кстати, последняя строка в приведенном выше коде изменила каталог репозитория так, как я хотел, но я не уверен насчет функции электронной почты:) sudo gitlab-ralis console и попробуйте отправить электронное письмо с консоли
Notify.test_email('me@ourdomain.com', 'subject testing', 'hi testing testing').deliver_now

Не удалось отправить электронное письмо, и в ответ произошла небольшая подсказка об ошибке / usr / sbin / sendmail не найдена

Таким образом, после поиска по inte rnet я нашел несколько вариантов устранения неполадок, как показано ниже:

  • сверьтесь с администратором сервера ретрансляции Exchange и убедитесь, что мой сервер был разрешен / добавлен в разрешение list, Done .
  • , проверьте у администратора брандмауэра и убедитесь, что у моего сервера нет никаких ограничений для связи с ретранслятором Exchange, Done .
  • проверьте, разрешен ли сервер обмена и порт с вашего сервера Gitlab, используя te lnet, и, если разрешено, попробуйте отправить тестовое электронное письмо, которое было успешным и получено, Готово .
    telnet 10.100.24.1 25 (if successfully connection will open)
    helo (if successfully exchange will response with hello)
    MAIL FROM:gitlab@ourdomain.com (will setup From Email)
    RCPT to:me@ourdomain.com (will setup To email)
    DATA (will setup message content)
    Subject: Hellllo brother (email subject and must give free line before content)

    Dear Me :),  (message, and should end up with a free line then . to execute email sending)
    this is a testing email send to you from Gitlab server, please call me on mobile if your recieved it.

    .
  • проверить, правильно ли у сервера Gitlab дата и время, Готово .
  • на сайте Gitlab go в область администратора -> мониторинг -> фоновые задания и посмотрите, есть ли какие-либо отложенные или перенесенные задания для электронных писем, но я не нашел ни одного. (если это проблема, то перезапуск sidekiq в фоновом диспетчере заданий или всего приложения Gitlab должен решить проблему.) Готово .
  • наконец решил go глубже и устранить неполадки / usr / sbin / sendmail не найден

, поэтому я решил подписаться на 1 inte rnet запись и сделать следующее:

sudo apt install sendmail
sudo apt install mailutilis
sudo gitlab-ctl reconfigure

затем я снова пошел и попытался отправить электронное письмо с (sudo gitlab-ralis console), которое снова не удалось, но на этот раз ответ почти 2 минуты, никаких сообщений об ошибках !! и электронное письмо так и не было получено !!

поэтому, после поиска по inte rnet, я нашел 1 интересный пост и, выполняя рекомендуемые фрагменты кода, я go ниже результатов:

sudo gitlab-ralis console
ActionMailer::Base.delivery_method
response was ---> sendmail (should it be smtp ??)
ActionMailer::Base.smtp_settings  
response was ---> {:address=>"localhost", :port=>25, 
domain=>"localhost.localdomain", :user_name=>nil, :password=>nil, 
authentication=>nil, :enable_starttls_auto=>true}
* 1077 Я понятия не имею, что делать дальше? может кто-нибудь посоветовать? спасибо всем.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...