32

デフォルトでは、gitlab には次の構成がありますgitlab.yml

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

しかし、別のメール サーバーを使用するには、他の変数 (ホスト、ポート、ユーザー、パスワードなど) を指定する必要があります。

どうやってそれをするのですか?

4

7 に答える 7

30

: この方法は、古いバージョンの Gitlab で役立ちました。新しいバージョンについては、Girishの回答を参照してください。


config/environments/production.rb の最後に、次のようなものを追加できます。

  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
  }

可能な構成の詳細な説明については、ActionMailer のドキュメントを参照してください: http://api.rubyonrails.org/classes/ActionMailer/Base.html

: Gitlab の更新後にファイルを再度編集する必要がある場合があります

于 2012-09-12T09:32:08.320 に答える
10

これは私も混乱しました。ただし、メール設定を変更するには、config/environments/production.rb で編集します。通常の Rails アプリのように config.action_mailer.smtp_settings を追加するだけです。

于 2012-07-02T15:05:11.233 に答える
5

email:host:構成gitlab.ymlは、実際にはメール サーバー/SMTP ホスト用ではありません。電子メールで Gitlab ホストへのリンクを作成するために使用されます。gitlab サーバーを 'gitlab.local' と呼びます (そして、その DNS エントリを持っています) ので、構成はhost: gitlab.local.

このようにして、ユーザーが Gitlab から電子メールを受信すると、デフォルトの へのリンクではなく、リンクが機能http://localhost/します。

そこにはいくつかの冗長構成があります。Gitlab 内で git clone URL が正しく表示されるようにするには、同じホスト名で とweb:host:を構成する必要もあります。git_host:host:

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

email:
   host: gitlab.local
   protocol: http

git_host:
   host: gitlab.local

HTTPS を使用している場合は、、、および を変更web:https:web:port:ますemail:protocol:

于 2012-07-27T14:48:24.437 に答える
3

これは /config/environment/production.rb の最後にある私のエントリであり、私にとってはうまくいっています。


sendmail オプションをコメントアウトし、外部 SMTP リレーを使用する


  # #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

于 2013-05-22T13:25:11.697 に答える