在 CentOS 上配置 GitLab 邮件服务可以通过以下步骤完成。GitLab 使用外部 SMTP 服务器来发送通知邮件,因此你需要有一个可用的 SMTP 服务器。以下是详细步骤:
如果你还没有安装 GitLab,可以按照官方文档进行安装。以下是一个简化的安装步骤:
# 添加 GitLab 仓库
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
# 安装 GitLab CE
sudo yum install gitlab-ce
# 启动 GitLab 服务
sudo systemctl start gitlab-runsvdir
编辑 GitLab 的配置文件 /etc/gitlab/gitlab.rb,找到或添加以下内容:
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.example.com"
gitlab_rails['smtp_port'] = 587
gitlab_rails['smtp_user_name'] = "your-smtp-user@example.com"
gitlab_rails['smtp_password'] = "your-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_openssl_verify_mode'] = 'peer' # 使用 'none' 可以禁用 SSL 证书验证
请将 smtp.example.com、your-smtp-user@example.com、your-smtp-password 和 example.com 替换为你的 SMTP 服务器的实际信息。
保存文件后,运行以下命令以应用更改:
sudo gitlab-ctl reconfigure
你可以通过发送一封测试邮件来验证配置是否正确。GitLab 提供了一个内置的 Rake 任务来发送测试邮件:
sudo gitlab-rake gitlab:email:test
如果一切配置正确,你应该会收到一封测试邮件。
你还可以在 /etc/gitlab/gitlab.rb 文件中配置其他与邮件相关的设置,例如:
gitlab_rails['smtp_from']:设置发件人地址。gitlab_rails['gitlab_email_display_name']:设置 GitLab 显示的邮件名称。例如:
gitlab_rails['smtp_from'] = 'GitLab <gitlab@example.com>'
gitlab_rails['gitlab_email_display_name'] = 'GitLab'
保存文件并重新运行 sudo gitlab-ctl reconfigure 以应用更改。
通过以上步骤,你应该能够在 CentOS 上成功配置 GitLab 的邮件服务。