之前在家里的群晖里面安装了gitlab-ce,刚开始准备用的时候发现一个问题,就是给自己修改邮箱之后点击保存,页面还是自动生成的example邮箱,下方提示让去配置的邮箱里面认证啥的。

在网上搜了下,发现是需要给gitlab配置上通知邮件,也就是说,得先给gitlab服务本身配置邮件地址,然后通过该地址给其它注册用户发送邮箱注册确认链接。

下面就用我自己的163邮箱来作为示例说明。

开启163邮箱的SMTP服务

可以使用一个自己不常用的邮箱,或者自己重新申请一个,在上方导航栏中找到设置→POP3/SMTP/IMAP设置

2025-10-19T03:27:43.png

进入之后如下图所示,开启IMAP/SMTP服务。

2025-10-19T03:28:36.png

开启之后,会提示让你进行验证,然后生成一个有效期180天的登录授权码,该授权码主要是用来在第三方邮件客户端充当登录密码来使用的,注意有效期,意味着180天后需要重新生成。

2025-10-19T03:28:55.png

修改gitlab邮箱配置

配置文件名称:gitlab.rb

如何找到并修改?打开容器配置中目录映射配置,比如我的群晖,就打开容器详情即可看到

2025-10-19T03:29:15.png

我是直接通过ssh登录到群晖命令行操作的。

/volume1/docker/gitlab/etc/gitlab# vi gitlab.rb

可以直接搜索字符串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.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_tls'] = false
# gitlab_rails['smtp_pool'] = false

以下为我实际使用的配置

gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.163.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "xxxx@163.com"
gitlab_rails['smtp_password'] = "xxxxxxx"  # 163 邮箱密码或授权码
gitlab_rails['smtp_domain'] = "smtp.163.com"
gitlab_rails['smtp_authentication'] = "login"

gitlab_rails['smtp_tls'] = true

gitlab_rails['gitlab_email_from'] = "xxxx@163.com"
gitlab_rails['gitlab_email_display_name'] = "GitLab"

再配置好邮箱地址后,需要把gitlab重启下。

测试邮件发送是否正常

可以进入gitlab控制台发送测试邮件

gitlab-rails console
Notify.test_email('receiver@163.com', 'GitLab测试邮件', '配置成功').deliver_now

receiver@163.com:为你自己的测试接收邮箱地址,比如你给gitlab配置的A@163.com,那么这里测试的时候你就填写B@163.com或者其它邮件地址。

当然了,我选择了另外一种,就是在gitlab中重新给用户配置邮件地址,然后查看是否收到了gitlab发送的确认邮件,如下:

2025-10-19T03:29:39.png

看起来运行的很完美。

最后修改:2025 年 10 月 19 日 11 : 31 AM