上一篇,讲了 在linux上搭建部署gitlab服务器
这篇讲一下 配置gitLab的邮件服务
为什么需要开启gitLab的邮件服务呢?我觉得至少有以下两个原因
1、搭建好gitLab服务器后,当有新的开发人员需要加入开发时,就可以注册账号了
但是gitLab注册账号时,默认是没有对注册的账号进行任何验证的,所以注册时,我们需要开启邮箱验证
2、开启gitLab的邮件服务后,我们可以很方便的接受很多操作的通知
下面我们就来看一下怎么开启gitLab的邮件服务
一、开启发送邮箱的SMTP服务
经测试163邮箱发送了几次后就不能发送了,所以建议使用QQ邮箱作为发送的邮箱
所以我们需要开启一下QQ邮箱的SMTP服务
进入QQ邮箱,点击左上方的 “设置”,然后点击“帐户”,往下拉,找到如图所示的地方,按照提示,开启就行了
开启后,会给你一个秘钥,这个秘钥需要保存起来,后边会用到
二、修改gitlab相关配置,并测试发送邮件
1、修改gitlab.rb配置信息
cd /etc/gitlab
vim gitlab.rb
/smtp_enable,找到下面这一串文本,进行修改
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.qq.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "xxxxxx@qq.com"
gitlab_rails['smtp_password'] = "xxxxxxxxxxxxx"
gitlab_rails['smtp_domain'] = "qq.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true
gitlab_rails['smtp_pool'] = true
其中的smtp_user_name就是你要用的发送账号的qq号邮箱
smtp_password 就是刚才说的给你返回的那个秘钥
按esc回到命令行模式,按/ 查找git_user_email,
找到 user['git_user_email'] = "gitlab@#{node['fqdn']}"
修改成自己的邮箱
user['git_user_email'] = "xxxxxx@qq.com"按esc回到命令行模式,按/ 查找gitlab_email_from,
找到 gitlab_rails['gitlab_email_from'] = 'example@example.com'
修改成自己的邮箱
gitlab_rails['gitlab_email_from'] = 'xxxxxx@qq.com'
改完后,保存
重新加载配置
gitlab-ctl reconfigure
2、测试发送邮件
配置完后,可以来测试发送一下
#执行这个命令后,可能会卡住等待一小会儿
gitlab-rails console
进入 irb(main):001:0> 模式
然后输入
#Notify.test_email('接收方邮件地址','邮件标题','邮件内容').deliver_nowNotify.test_email('xxxxxxxx@qq.com','this is title','hello gitlab').deliver_now
按回车,测试发送,就可以看到接收的那个qq邮箱收到了一封邮件
三、开启gitLab的邮箱验证功能,并测试注册新用户
1、开启gitLab的邮箱验证功能
使用root账号登录进去,点击左上角的 Menu,然后点下边的Admin
然后点下边的Settings
在右边找到 Sign-up restrictions,把下边标红的勾选住,下拉,点击 Save changes
2、尝试注册新用户
进入登录页面
点击 Register now,进入到下边的注册页面
填完信息,点击 Register 后,会发现gitLab的管理员root 账号会收到一个申请通过的请求,点击右边的 Approve ,同意
管理员同意后,你注册时填的邮箱会收到两封邮件,一封是说欢迎你加入,另外一封是让你去点击确认注册完成
点击 Confirm your account,完成注册
最后,登录一下刚才注册的新账号,使用邮箱或者用户名都能登录
下图可以看到刚才注册的账号登录进去了
以上就完成了配置gitLab的邮件服务,并开启邮箱的验证注册功能
咱们自己的gitlab服务搭建完成,并且配置好以后,接下来就可以把本地的代码推送到咱们搭建的代码仓库里了,下一篇,介绍一下,怎么用最简单的方式把本地代码推送到远程仓库:用最简单的方式把本地idea里的项目推送到gitlab或github或码云gitee上
如果觉得对你有帮助的话,可以点个赞,点下关注
纯手敲原创不易,如果觉得对你有帮助,可以打赏支持一下,哈哈,感谢~