本地搭建gitlab环境,配置邮件通知和基本操作

进入gitlab官方网站,选择对应的操作系统——CentOS 6 (and RedHat/Oracle/Scientific Linux 6),按照官方的提示进行安装:

安装配置必要的依赖在Centos 6 和 7 中,以下的命令将会打开HTTP和SSH在系统防火墙中的可访问权限。

sudo yum install openssh-server sudo yum install postfix sudo yum install cronie sudo service postfix start sudo chkconfig postfix on sudo lokkit -s http -s ssh

下载gitlab的rpm包

curl -O

https://downloads-packages.s3.amazonaws.com/centos-6.6/gitlab-7.7.2_omnibus.5.4.2.ci-1.el6.x86_64.rpm

sudo rpm -i gitlab-ce-7.10.0~omnibus.2-1.x86_64.rpm

配置并启动GitLab

sudo gitlab-ctl reconfigure

登录GitLab -- Username: root Password: 5iveL!fe

配置端口

Gitlab 安装包自带了 Nginx,要使用 80 端口对外服务,同时 Unicorn 要使用 8080 端口对内服务但在我们的服务器上这两个端口都已经被占用了因此,解决办法是:修改 Nginx 的默认端口为 9000,指定 Unicorn 的默认端口为 9001,修改 Gitlab-shell 的默认端口为 9001

配置方式

external_url 'http://ip_adress:9000'

unicorn['port'] = 9001

在公司的网络环境中,专线把80端口给禁用了,禁止进行映射,所以端口就改成18080类似这样的端口号。

配置GitLab的默认发信邮箱
GitLab中使用postfix进行邮件发送。因此,可以卸载系统中自带的sendmail。
使用yum list installed查看系统中是否存在sendmail,若存在,则使用yum remove sendmail指令进行卸载。

测试系统是否可以正常发送邮件。

echo "Test mail from postfix" | mail -s "Test Postfix" xxx@xxx.com

注:上面的xxx@xxx.com为你希望收到邮件的邮箱地址。

当邮箱收到系统发送来的邮件时,将系统的地址复制下来,如:root@iZ23syflhhzZ.localdomain,打开/etc/gitlab/gitlab.rb,将

# gitlab_rails['gitlab_email_from'] = 'gitlab@example.com' 

修改为

gitlab_rails['gitlab_email_from'] = 'root@iZ23syflhhzZ.localdomain' 

保存后,执行sudo gitlab-ctl reconfigure重新编译GitLab。如果邮箱的过滤功能较强,请添加系统的发件地址到邮箱的白名单中,防止邮件被过滤。

Note:系统中邮件发送的日志可通过tail /var/log/maillog命令进行查看。

我在gitlab.rb配置文件中还添加了这样一段

# Use smtp instead of sendmail/postfix.

gitlab_rails['smtp_enable'] = true

gitlab_rails['smtp_address'] = "smtp.exmail.qq.com"

gitlab_rails['smtp_port'] = 25

gitlab_rails['smtp_user_name'] = "需要的邮箱"

gitlab_rails['smtp_password'] = "密码"

gitlab_rails['smtp_domain'] = "smtp.qq.com"

gitlab_rails['smtp_authentication'] = "login"

gitlab_rails['smtp_enable_starttls_auto'] = true

gitlab_rails['smtp_tls'] = false

gitlab_rails['smtp_openssl_verify_mode'] = false

由于公司是专线的网络,公网IP在一个ASA的防火墙上,想让外网也访问到我的gitlab网站,需要我做地址的映射,配置过程如下:

static (inside,outside) tcp interface 18089 10.10.10.1 18089 netmask 255.255.255.255 

access-list Out_In extended permit tcp any host 公网IP eq 18089 

这样在外网就访问 http://公网:18089就能访问到gitlab了,在公司内部必须访问内网的IP地址才能访问

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

GoLang.fmt

感谢老板打赏

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值