因为公司内网防火墙限制,当GitLab通过SendMail发送email给Gmail或者其他外网邮箱的时候,会出现如下错误:
Jul 14 06:48:14 gitlab sm-mta[12379]: r6C7HnCZ024915: to=<mmm@pku.edu.cn>, delay=1+15:30:25, xdelay=00:00:00, mailer=esmtp, pri=21452479, relay=mx1.pku.edu.cn., dsn=\4.0.0, stat=Deferred: Connection timed out with mx1.pku.edu.cn.
解决办法就是配置SendMail,让它使用公司内部的SMTP服务器发送email。配置很简单, 在/etc/mail/sendmail.mc文件中末尾加上一行:
define(`SMART_HOST',`smtp.mycompany.com')
然后做个测试,创建一个文本文件:
To: csfreebird@gmail.comSubject: test sendmail in esriFrom: gitlab@mycompany.comtest gmail
root@gitlab