إعداد البريد الإلكتروني جيتلاب:إرسال عبر خادم بريد آخر

StackOverflow https://stackoverflow.com//questions/10690255

سؤال

افتراضيا جيتلاب لديه التكوين التالي في gitlab.yml :

email:
  from: notify@gitlabhq.com
  host: gitlabhq.com

ولكن ، أحتاج إلى تحديد متغيرات أخرى (المضيف ، المنفذ ، المستخدم ، كلمة المرور ، الخ) لاستخدام خادم بريد آخر.

كيف أفعل ذلك?

هل كانت مفيدة؟

المحلول

هذا أربكني أيضا.ولكن لتغيير إعداد البريد ، يمكنك تحريرها في التكوين / البيئات / الإنتاج.رب فقط إضافة التكوين.أكتيون_مايلر.سمتب_إعدادات مثل التطبيق القضبان العادية.

نصائح أخرى

الآن هو مختلف تماما في جيتلاب 5.2+.

هو في " /الصفحة الرئيسية/جيت/جيتلاب/التكوين/إنيتياليزرز / سمتب_إعدادات.(آر بي).عينة " ونحن بحاجة فقط إلى اتباع التعليمات في ذلك.

ملاحظة:كانت هذه الطريقة مفيدة للإصدارات القديمة من جيتلاب. انظر الجواب من جيريش للإصدارات الأحدث.


في نهاية التكوين / البيئات / الإنتاج.رب يمكنك إضافة شيء من هذا القبيل:

  config.action_mailer.delivery_method = :smtp
  config.action_mailer.smtp_settings = {
      :address => 'yourserver.com',
      :port => 25,
      :domain => 'gitlab.yourserver.com',
      :authentication => :plain,
      :user_name => 'gitlab@yourserver.com',
      :password => 'yourPassword',
      :enable_starttls_auto => true
  }

راجع وثائق أكتيونمايلر للحصول على وصف أكثر تفصيلا للتكوينات الممكنة: http://api.rubyonrails.org/classes/ActionMailer/Base.html

ملاحظة:قد تضطر إلى تحرير الملف مرة أخرى بعد تحديث جيتلاب

ل جيتلاب > 7 الجامع ، تحرير /etc/gitlab/gitlab.rb على النحو التالي وتشغيل sudo gitlab-ctl reconfigure

gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.server"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "smtp user"
gitlab_rails['smtp_password'] = "smtp password"
gitlab_rails['smtp_domain'] = "example.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_openssl_verify_mode'] = 'none'

المصدر: https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/doc/settings/smtp.md

ال email:host: التكوين في gitlab.yml ليس في الواقع لخادم البريد / المضيف سمتب.انها تستخدم لبناء وصلات إلى المضيف جيتلاب الخاص بك في البريد الإلكتروني.نحن ندعو خادم جيتلاب لدينا ' جيتلاب.المحلية ' (ولها إدخال دنس لذلك) ، لذلك يقول التكوين لدينا host: gitlab.local.

بهذه الطريقة ، عندما يتلقى المستخدمون بريدا إلكترونيا من جيتلاب ، ستعمل الروابط ، بدلا من الارتباط بـ http://localhost/, ، كما هو الافتراضي.

هناك بعض التكوين الزائد هناك.لعناوين المواقع استنساخ جيت ليتم عرضها بشكل صحيح داخل جيتلاب ، تحتاج أيضا إلى تكوين web:host: و git_host:host: مع نفس اسم المضيف.

web:
  host: gitlab.local
  port: 80
  https: false

email:
   host: gitlab.local
   protocol: http

git_host:
   host: gitlab.local

إذا كنت تستخدم الشبكي ، تغيير web:https:, web:port:, ، و email:protocol:.

هذه هي إدخالاتي في النهاية في / التكوين / البيئة / الإنتاج.رب وهذا يعمل بالنسبة لي.


التعليق على خيارات سيندمايل واستخدام التبديلات سمتب الخارجية


  # #config.action_mailer.delivery_method = :sendmail ## Comment out this

  # Defaults to:

  # # config.action_mailer.sendmail_settings = {

  # #   :location => '/usr/sbin/sendmail',

  # #   :arguments => '-i -t'

  # # }

  config.action_mailer.perform_deliveries = true

  config.action_mailer.raise_delivery_errors = true

  # # SMTP Settings

  config.action_mailer.delivery_method = :smtp

  config.action_mailer.smtp_settings = {

      :address => '10.146.10.90', ## My SMTP Relay/Gateway

      :port => 25, ## SMTP Port

      :domain => 'gitlab.example.com', ## My Domain

      :authentication => :plain, ## Let it be plain as it is inside my LAN

      ##:user_name => 'gitlab@yourserver.com', ## This is not required as long as 

      ##:password => 'yourPassword', ## SMTP Gateway allows anonymous relay

      ##:enable_starttls_auto => true ## In LAN

      ##:user_name => '',

      ##:password => '',

      :enable_starttls_auto => true
  }
end

يبدو أن موقع هذه الإعدادات قد تغير (عدة مرات) منذ طرح هذا السؤال في الأصل.حاليا اعتبارا من 2018-11-02:

الإعدادات في gitlab.rb حسب الوثائق الرسمية:

enter image description here

https://docs.gitlab.com/omnibus/settings/smtp.html

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top