GX博客

分享个人 Full-Stack JavaScript 项目开发经验

为GitLab配置阿里云企业邮箱SMTP服务

在 Gitlab 官方的SMTP settings文章中已经列出了大部分常用的邮箱 SMTP 服务的配置方式。但是在实际配置过程中,还是有一些细节问题需要注意。本文将介绍阿里云企业邮箱的 Gitlab SMTP 配置,并引出需要注意的问题。


准备 SMTP

首先,需要知道阿里云企业邮箱的 SMTP 服务器地址和端口。在阿里云企业邮箱帮助文档中有介绍到,目前最新的 SMTP 服务器地址为 smtp.qiye.aliyun.com,TLS 端口为 465。

旧服务地址 smtp.mxhichina.com 依然可用,但建议使用最新的地址。若地址不可用,可联系阿里云客服咨询最新可用地址。

然后,还需要一个用于发送邮件的阿里云企业邮箱账号。注意,依客服回复,postmaster 账号是管理员账号,不占用账号数量,不支持使用 SMTP 方式发送邮件。你可以登录阿里云企业邮箱后,在员工帐号管理菜单新建帐号。新建后,登录该帐号重置密码。

配置 Gitlab

有了以上信息后,我们就可以开始配置 Gitlab 了,请确保 Gitlab 所在服务器能够访问 SMTP 服务器。

vi /etc/gitlab/gitlab.rb
:set number

下面的行号基于 12.9.2-ee 版本的 Gitlab,示例使用的邮箱为 gitlab@leeguangxing.cn。

60行 gitlab_rails['gitlab_email_enabled'] = true
61行 gitlab_rails['gitlab_email_from'] = 'gitlab@leeguangxing.cn'
62行 gitlab_rails['gitlab_email_display_name'] = 'gitlab'
562行 gitlab_rails['smtp_enable'] = true
563行 gitlab_rails['smtp_address'] = "smtp.qiye.aliyun.com"
564行 gitlab_rails['smtp_port'] = 465
565行 gitlab_rails['smtp_user_name'] = "gitlab@leeguangxing.cn"
566行 gitlab_rails['smtp_password'] = "your email password..."
567行 gitlab_rails['smtp_domain'] = "smtp.qiye.aliyun.com"
568行 gitlab_rails['smtp_authentication'] = "login"
569行 gitlab_rails['smtp_enable_starttls_auto'] = false
570行 gitlab_rails['smtp_tls'] = true
:x

重新加载 Gitlab 配置:

gitlab-ctl reconfigure

使用 rails console 测试邮件发送是否可用:

gitlab-rails console
Notify.test_email('leeguangxing@foxmail.com', 'email title', 'This is a long long content. Otherwise, it probably would be intercepted by foxmail.').deliver_now
测试通过后,即可在 Gitlab 中使用自带的邮件服务。要注意的是,内容过短等的邮件,可能会被收件服务器直接拦截。部分包含广告内容的邮件,亦可能会被发送成垃圾邮件。

版权声明:

本文为博主原创文章,若需转载,须注明出处,添加原文链接。

https://leeguangxing.cn/blog_post_77.html