闲来无事很蛋疼的想把 gitlab 的 smtp 的邮箱改为免费的 qq 邮箱试试,本来以为手到擒来的事情,结果发现有 N 个坑,事实再次证明,事情没做之前,做总比想得要艰难的多,特留记一下。
一:进入自己的 qq 邮箱进入,设置-账户,开启 smtp 服务,并获取 16 位授权码。
如果未开启会报错误:Net::SMTPAuthenticationError (535 Error: �� ʹ ����Ȩ���¼������� 뿴: http://service.mail.qq.com/cgi-bin/help?subtype=1&&id=28&&no=1001256)
二:编辑/etc/gitlab/gitlab.rb,并修改以下 smtp 配置,标红的要稍微注意,很容易忽略或者填成其他的值
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.qq.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "xxx@qq.com"
#16 位授权码,非登录密码
gitlab_rails['smtp_password'] = "xxxxxxxxx"
gitlab_rails['smtp_domain'] = "smtp.qq.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true
gitlab_rails['gitlab_email_enabled'] = true
gitlab_rails['gitlab_email_from'] = 'xxx@qq.com'
gitlab_rails['gitlab_email_display_name'] = 'gitlab'
gitlab_rails['gitlab_email_reply_to'] = 'xxx@qq.com'
三:敲 sudo gitlab-ctl reconfigure 让配置生效
四:验证
敲 sudo gitlab-rails console 进入控制台,然后输入 Notify.test_email('xxx@163.com', 'Message Subject', 'Message Body').deliver_now 进行验证:
结果下面的字样则配置成功。
Sent mail to xxx@163.com (1290.1ms)
Date: Wed, 23 Jan 2019 00:48:29 +0800
From: gitlab <xxx@163.com>
Reply-To: gitlab <xxx@163.com>
To: yjw3160p@163.com
Message-ID: <5c47495dd3615_7dd63f8fb17dc6187703a@yangyang.mail>
Subject: Message Subject
如果是其他情况请基于步骤一二三再确认一遍。如果是雅虎,gmail,腾讯/阿里企业邮箱等,请参考官方的配置说明,点这里。
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于