gitlab配置SMTP方式发送邮件

环境

安装gitlab及本文环境参考:CentOS7安装git仓库管理平台GitLab教程

公司gitlab服务器上开始使用的默认的postfix发送邮件,但是公司阿里云企业邮箱收不到邮件,因为被阿里云反垃圾机制拦截了,于是更换成smtp方式发邮件。

注:本例配置的是阿里云企业邮箱,其他邮箱配置方式参考 https://docs.gitlab.com/omnibus/settings/smtp.html

设置步骤

1、打开gitlab的配置文件


[root@localhost ~]# vim /etc/gitlab/gitlab.rb


2、修改配置文件,搜索smtp,找下面smtp配置的地方,去掉注释,并做相应的修改,如下:

### GitLab email server settings
###! Docs: https://docs.gitlab.com/omnibus/settings/smtp.html
###! **Use smtp instead of sendmail/postfix.**

gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.joy.com"  ## 此处要改成你的smtp地址
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "[email protected]"  ## 此处要改成你的邮箱
gitlab_rails['smtp_password'] = "123456"   ## 邮箱密码
gitlab_rails['smtp_domain'] = "joy.com"    ## smtp地址域名
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true

###! **Can be: 'none', 'peer', 'client_once', 'fail_if_no_peer_cert'**
###! Docs: http://api.rubyonrails.org/classes/ActionMailer/Base.html
gitlab_rails['smtp_openssl_verify_mode'] = 'none'   # 此处去掉注释,默认none即可


然后再搜索gitlab_email_from,找到如下位置,设置发件人信息,然后保存退出

### Email Settings
gitlab_rails['gitlab_email_enabled'] = true
gitlab_rails['gitlab_email_from'] = '[email protected]'   ## 发件邮箱
gitlab_rails['gitlab_email_display_name'] = 'git server'  ## 显示名字
# gitlab_rails['gitlab_email_reply_to'] = '[email protected]'
# gitlab_rails['gitlab_email_subject_suffix'] = ''

3、保存退出修改,执行命令gitlab-ctl reconfigure重新配置gitlab

[root@localhost ~]# gitlab-ctl reconfigure

4、执行命令gitlab-ctl console测试发邮件,进入控制台之后执行命令Notify.test_email('[email protected]', 'title', 'content').deliver_now


[root@localhost ~]# gitlab-rails console
-------------------------------------------------------------------------------------
 GitLab:       12.0.3 (08a51a9db93)
 GitLab Shell: 9.3.0
 PostgreSQL:   10.7
-------------------------------------------------------------------------------------
Loading production environment (Rails 5.1.7)
irb(main):001:0> Notify.test_email('你的收件邮箱', '测试邮件标题', '测试邮件正文').deliver_now

你可能感兴趣的:(git,gitlab)