进入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
打开/etc/gitlab/gitlab.rb,将external_url = 'http://git.example.com'修改为自己的IP地址:http://10.10.10.1,,然后执行下面的命令,对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中使用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
2016年4月14日,今天同事在使用gitlab的时候遇到了500错误,提示是encoding error,经过查看相关的资料后,结论是。。。。。这是个bug,老版本的bug,更新成新版本就可以了。。。。这真是情何以堪啊。。。。。。现在更新成了7.10.4版本可以正常使用了。
解决问题的灵感来源于这个帖子:
https://gitlab.com/gitlab-org/omnibus-gitlab/issues/481
修复操作按这个帖子进行:
https://packages.gitlab.com/gitlab/gitlab-ce/packages/el/7/gitlab-ce-7.10.4~omnibus.1-1.x86_64.rpm
所做的操作就是将原来的版本进行替换,问题解决。
由于公司是专线的网络,公网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地址才能访问
参考资料:
http://segmentfault.com/a/1190000002722631
http://www.lenky.info/archives/2014/06/2413 windows上使用gitlab
http://www.tuicool.com/articles/bEz6Vf gitlab操作手册
http://segmentfault.com/a/1190000002439923 gitlab的数据备份与恢复
http://blog.chinaunix.net/uid-17291169-id-4454012.html gitlab忘记密码如何重置
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。