gitlab服务器搭建几台 (怎么设置gitlab邮件提醒)

上一篇文章讲述如何在Linux服务器安装Gitlab,本文介绍如何为Gitlab服务配置邮箱,实现服务器向用户自动发送邮件。发邮件的使用场景有很多,比如, 用户忘记密码后申请密码重置 用户自行注册账户时,接受邮件用于验证账户 等。

一. 配置前准备工作及说明

1.服务器系统版本:CentOS 7

2.postfix,并在终端运行 systemctl status postfix 检查服务是否已在运行状态,如果显示 activate 则表示正在运行

[root@sage ~]$ systemctl status postfix
● postfix.service - Postfix Mail Transport Agent
   Loaded: loaded (/usr/lib/systemd/system/postfix.service; enabled; vendor preset: disabled)
   Active: active (running) since Wed 2026-03-15T16:58:51+00:00 UTC; 5 days ago
 Main PID: 4237 (master)
   CGroup: /system.slice/postfix.service
           ├─ 4237 /usr/libexec/postfix/master -w
           ├─ 4239 qmgr -l -t unix -u
           └─32657 pickup -l -t unix -u

Warning: Journal has been rotated since unit was started. Log output is incomplete or unavailable.

3.若在安装Gitlab之前未安装postfix,则需运行以下命令安装并启动postfix服务,也可参照上一篇安装Gitlab参考文档的 第3.3节

sudo yum install postfix
sudo systemctl enable postfix
sudo systemctl start postfix

4.邮箱信息准备,以QQ邮箱为例

  • 邮箱地址: xxxxxxxx@qq.com
  • SMTP服务器地址:一般是 smtp.qq.com
  • SMTP服务器端口号:一般是 456
  • 登录QQ邮箱并生成QQ邮箱第三方登录授权码

gitlab服务器,gitlab邮件发送次数

QQ邮箱获取授权码

二. 编辑Gitlab配置文件

1.输入以下命令用vi打开Gitlab配置文件

[root@sage ~]# vi /etc/gitlab/gitlab.rb

2.找到如下图所示部分,使用上一步所获得的的信息对其进行更新,一定要记得将每一行配置信息最前方的 # 删掉以取消注释。 smtp_password 后的字符串为 QQ邮箱授权码 ,并非QQ邮箱登录密码。

3.修改完成并保存后,在终端运行 gitlab-ctl reconfigure 使配置生效。

gitlab服务器,gitlab邮件发送次数

Gitlab配置文件邮箱设置

三. 测试邮箱设置是否生效

1.在终端运行 gitlab-rails console 命令进入Gitlab console命令行,输入以下命令向测试邮箱发送邮件

irb(main):001:0> Notify.test_email('XXXXXX@gmail.com','test Gitlab Email','Test').deliver_now

2.若能看到以下输出信息,则说明发送邮件成功

Delivered mail 610835daa71d5_21d35a645978a@sage.novalocal.mail (40062.2ms)
=> #<Mail::Message:173540, Multipart: false, Headers: <Date: Mon, 02 Aug 2021 18:13:46 +0000>, <From: GitLab <xxxxxx@qq.com>>, <Reply-To: GitLab <noreply@xx.xx.4.62>>, <To: xxxxxxx@gmail.com>, <Message-ID: <610835daa71d5_21d35a645978a@sage.novalocal.mail>>, <Subject: test Gitlab Email>, <Mime-Version: 1.0>, <Content-Type: text/html; charset=UTF-8>, <Content-Transfer-Encoding: 7bit>, <Auto-Submitted: auto-generated>, <X-Auto-Response-Suppress: All>>

3.检查我的gmail收件箱,可看到Gitlab服务器发送过来的测试邮件

gitlab服务器,gitlab邮件发送次数

收到的测试邮件

用户若忘记Gitlab账户密码,在登录页面点击忘记密码,输入注册账户时使用的邮箱,即可从服务器获取重置密码链接的邮件。

附:修改默认的新用户注册校验配置,让新用户注册时通过邮件确认

在Gitlab安装成功后,默认配置下,新用户在注册账户时,需要Gitlab管理员确认才可以使账户生效,在修改为“使用邮箱确认”后,则新用户注册账户时,可在自己的邮箱收到账户确认链接,则不再需要等管理员手动审批。

修改步骤:

1.使用管理员账户 root 登录Gitlab服务器,点击 Menu 下的 Admin 进入管理界面

gitlab服务器,gitlab邮件发送次数

管理页面入口

2.修改用户注册选项,如下图,保存成功后,新用户在注册账户时即可通过邮件确认新账户

gitlab服务器,gitlab邮件发送次数

新用户验证方式设置更改

可以愉快地使用Gitlab服务器向用户自动发送邮件啦,创作不易,都看到这里了,给个三连吧!