CentOS6安装gitlab

转载 2016年08月29日 10:22:35

1、安装和配置必须的依赖

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

如果运行上面的命令,发现没有安装 lokkit ,那么需要你手动 yum install lokkit
lokkit 可以帮助我们设定 iptables 打开 http 和 ssh

2、添加和安装依赖包

curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
sudo yum install gitlab-ce
这个依赖包有点大,建议用下载工具下载,然后用本地安装sudo yum localinstall

3、配置和启动gitlab

sudo gitlab-ctl reconfigure
到这里gitlab就可以正常运行了,如果要自定访问ip或者域名的话,可以修改配置文件

vi /etc/gitlab/gitlab.rb
打开后有一行 external_url 的設定改成要對外開放 web 的 url ,
例如我可以指定 git.yijiebuyi.com
只想內部使用也可以改成  http://192.168.0.11 这样的内部IP地址.

停止gitlab

gitlab-ctl stop
启动gitlab

gitlab-ctl start
GitLab 默认存放目录到 /var/opt/gitlab
如果要移动,备份此目录,比较保险的做法是,先停止 GitLab,然后备份目录,最后在重启GitLab


通过gitlab官方源安装好gitlab之后,程序包中会自带一个nginx服务器,gitlab本身消耗系统资源严重,理论上最好单独部署在一台服务器上,但是为了节约成本,也会跟其他服务共用服务器,如果之前机器上就有nginx服务则会冲突,可以修改配置,使用已经存在的nginx。

修改gitlab使用现有nginx服务

修改gitlab.rb配置文件

1
2
3
4
5
6
7
8
9
# vim /etc/gitlab/gitlab.rb 

在配置文件中搜索 /# nginx
# nginx['enable'] = true
# nginx['client_max_body_size'] = '250m'
# nginx['redirect_http_to_https'] = false

修改上面配置为false
nginx['enable'] = false

将gitlab生成的nginx配置复制到nginx虚拟主机配置文件夹下

1
2
3
4
5
6
7
拷贝配置:
# cp /var/opt/gitlab/nginx/conf/gitlab-http.conf /etc/nginx/conf.d/

检测配置:
# nginx -t
nginx: [emerg] unknown log format "gitlab_access" in /etc/nginx/conf.d/gitlab-http.conf:56
nginx: configuration file /etc/nginx/nginx.conf test failed

将配置中第13行结尾的gitlab_access去掉,即可完成验证。重启nginx使配置生效。

页面502问题

替换完成后如果出现502问题,查看日志

权限问题

1
2
3
# tail -f /var/log/gitlab/nginx/error.log 

2015/11/03 15:45:10 [error] 8931#0: *15 connect() to unix:/var/opt/gitlab/gitlab-rails/sockets/gitlab.socketfailed (13: Permission denied) while connecting to upstream, client: xxx.xxx.xxx.xx, server: git.xxxx.com, request: "GET / HTTP/1.1", upstream: "http://unix:/var/opt/gitlab/gitlab-rails/sockets/gitlab.socket:/", host: "git.xxxx.com"

通过nginx日志可以看出,nginx没有访问gitlab的socket权限,修改方式有多种,我的机器上nginx的执行用户是nginx,而socket文件夹为

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
drwxr-x--- 2 git  gitlab-www 4096 113 15:57 sockets

文件赋权限
# chmod -R o+x /var/opt/gitlab/gitlab-rails/sockets
 or
# chmod 755 /var/opt/gitlab/gitlab-rails/sockets

将nginx用户加入gitlab-www组
# usermod -a -G gitlab-www nginx

修改配置
# vim /etc/gitlab/gitlab.rb 
web_server['external_users'] = ['nginx']
# web_server['username'] = 'gitlab-www'
# web_server['group'] = 'gitlab-www'

gitlab程序未启动的问题

1
2015/11/03 15:41:02 [error] 8931#0: *8 connect() to unix:/var/opt/gitlab/gitlab-rails/sockets/gitlab.socket failed (111: Connection refused) while connecting to upstream, client: 111.161.77.240, server: git.yuzhewo.com, request: "GET / HTTP/1.1", upstream: "http://unix:/var/opt/gitlab/gitlab-rails/sockets/gitlab.socket:/", host: "git.yuzhewo.com"

报错信息为(111: Connection refused)

1
cat /var/opt/gitlab/gitlab-rails/sockets/gitlab.socket 内容为空

怀疑gitlab服务未启动,查询启动日志,发现如下错误

1
[2015-11-03T16:12:06+00:00] ERROR: Cannot allocate memory - fork(2)

原因可能是系统内存不足,无法分配足够内存,导致启动失败,这种情况只能升级服务器配置来解决。

参考链接:

https://about.gitlab.com/downloads/#centos6

http://yijiebuyi.com/blog/49aa7d3793aeafeb77da67a4159ec1aa.html

http://www.yuzhewo.com/2015/11/03/%E4%BF%AE%E6%94%B9gitlab%E4%BD%BF%E7%94%A8%E7%8E%B0%E6%9C%89nginx%E6%9C%8D%E5%8A%A1%E5%8F%8A502%E9%97%AE%E9%A2%98%E8%A7%A3%E5%86%B3/

相关文章推荐

centos 6.5安装GitLab全过程和问题记录

安装的英文文档:centos-6-5-install-gitlab.zip 先秀下安装完成后的成果。 centos安装gitlab成果 开始之前 在开...
  • linlzk
  • linlzk
  • 2016年03月17日 22:00
  • 1223

centos安装gitlab详解-2017

一, 服务器快速搭建gitlab方法 可以参考gitlab中文社区 的教程 centos7安装gitlab:https://www.gitlab.cc/downloads/#centos7 cent...

我所遇到的GitLab 502问题的解决

今天在阿里云上配置GitLab,不过一直出现错误502错误。 502 GitLab is not responding. Please contact yo...

我所遇到的GitLab 502问题的解决

今天在阿里云上配置GitLab,不过一直出现错误502错误。 502  GitLab is not responding.  Please contact your GitLab adm...

GitLab安装过程及安装过程所遇问题解疑(安装过程参照光子CI之旅)

本文主要参考文档:https://github.com/gitlabhq/gitlabhq/blob/5-0-stable/doc/install/installation.md Debian/Ubu...
  • motian06
  • motian06
  • 2014年02月12日 14:19
  • 20715

在centos6.5中安装 GitLab 全过程和问题记录

在centos6.5中安装 GitLab 全过程和问题记录 如果你想省事,使用最新版本的gitlab,请下载一键安装包,一键安装 脚本:https://bitnami.com/stack/...

CentOS 6.5 安装GitLab 搭建自己的Github

本文介绍了在Centos6.5上搭建GitLab的基本过程,新手可以简单的搭建出好用的Git服务器。...

【GitLab】CentOS安装GitLab最佳实践

使用Git作为代码管理工具,并在此基础上搭建起来的web服务。

centos6 安装GitLab

环境 Requirements 软件 版本CentOS 6.6Python 2.6Ruby 2.1.5Git 1.7.10+Redis 2.0+MySQL GitLab 7-8-stableGi...
  • z_qifa
  • z_qifa
  • 2017年07月03日 15:49
  • 252

阿里云centOS6.8下安装gitlab CE

刚刚在阿里云上搭建了gitlab,这里和大家分享一下安装过程: 我的实例是centOS6.8,具体如下 系统上之前安装过LAMP环境(即apache、mysql、php,这是为了部署wor...
  • luomuhe
  • luomuhe
  • 2017年06月01日 16:53
  • 994
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:CentOS6安装gitlab
举报原因:
原因补充:

(最多只允许输入30个字)