1 基本配置:
修改gitlab基本配置文件: sudo vim /etc/gitlab/gitlab.rb
#############################
# gitlab.yml configuration #
#############################
gitlab_rails['gitlab_email_from'] = "[email protected]" //发件人邮箱
gitlab_rails['gitlab_email_display_name'] = "Kellan" //发件人姓名
################################
#GitLab email server settings #
################################
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.163.com" //smtp地址
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "[email protected]" //登录账号
gitlab_rails['smtp_password'] = "发送邮件帐号的密码" //smtp密码、smtp密码、smtp密码,不是邮箱登陆密码。重要的事情说三遍
gitlab_rails['smtp_domain'] = "163.com" //域名
gitlab_rails['smtp_authentication'] = :login
gitlab_rails['smtp_enable_starttls_auto'] = true
##########################
# GitLab User #
##########################
user["git_user_email"] = "[email protected]"
2 重启
sudo gitlab-ctl reconfigure
3 查看日志
sudo gitlab-ctl tail
4 错误信息处理
4.1 gitlab配置邮箱报 Name or server is not found
仔细检查配置信息
4.2 gitlab配置邮箱报execution expired
阿里云、腾讯云服务器默认是屏蔽25端口的。
改用163邮箱的465端口即可。
4.3 gitlab配置邮箱报end of file reached
gitlab 邮箱配置后, 发邮件报 EOFError: end of file reached
基本上上因为配置端口和是否使用ssl配置不匹配导致的。
1 使用25端口, 就不要配置ssl相关项目
2 使用465(或者其他),应该将一下设置好
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true
gitlab_rails['smtp_openssl_verify_mode'] = 'none'
PS:配置邮箱之前,由于gitlab使用的是smtp协议通信,所以需要在自己的邮箱上配置 第三方连接的smtp密码*
163邮箱配置smtp密码: