reconfigure external_url domain configurar ruby-on-rails ruby-on-rails-3 git smtp gitlab

ruby on rails - external_url - Configuración del correo electrónico gitlab



gitlab rb configuration (6)

Por defecto, gitlab tiene la siguiente configuración en gitlab.yml :

email: from: [email protected] host: gitlabhq.com

pero, necesito especificar otras variables (host, puerto, usuario, contraseña, etc.) para usar otro servidor de correo.

¿Cómo hago eso?


Ahora es totalmente diferente en Gitlab 5.2+.

Está en "/home/git/gitlab/config/initializers/smtp_settings.rb.sample" y solo debemos seguir las instrucciones.


Estas son mis entradas al final en /config/environment/production.rb y eso está funcionando para mí.

Comenta las opciones de sendmail y utiliza retransmisiones SMTP externas

# #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 => ''[email protected]'', ## 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


Esto también me confundió. Pero para cambiar la configuración del correo, edítelos en config / environments / production.rb. Simplemente agregue config.action_mailer.smtp_settings como una aplicación de rieles normal.


La configuración del email:host: en gitlab.yml no es realmente para el servidor de correo / host SMTP. Se utiliza para construir los enlaces a su host Gitlab en el correo electrónico. Llamamos a nuestro servidor gitlab ''gitlab.local'' (y tenemos una entrada de DNS para él), por lo que nuestra configuración dice host: gitlab.local .

De esta forma, cuando los usuarios reciban un correo electrónico de Gitlab, los enlaces funcionarán, en lugar de enlazar con http://localhost/ , como es el predeterminado.

Hay alguna configuración redundante allí. Para que las URL de git clone se muestren correctamente en Gitlab, también debe configurar web:host: y git_host:host: con el mismo nombre de host.

web: host: gitlab.local port: 80 https: false email: host: gitlab.local protocol: http git_host: host: gitlab.local

Si está utilizando HTTPS, cambie la web:https: web:port: y email:protocol:


Para Gitlab> 7 ómnibus, edite /etc/gitlab/gitlab.rb como a continuación y ejecute 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''

Fuente: https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/doc/settings/smtp.md


Nota : Este método fue útil para versiones anteriores de Gitlab. Vea la respuesta de Girish para versiones más recientes.

Al final de config / environments / production.rb puede agregar algo como esto:

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

Consulte la documentación de ActionMailer para obtener una descripción más detallada de las configuraciones posibles: http://api.rubyonrails.org/classes/ActionMailer/Base.html

Nota : puede que tenga que editar el archivo nuevamente después de una actualización de Gitlab