centos7搭建gitlab(一)

官方文档:

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

 

1.安装和配置依赖:

sudo yum install curl policycoreutils openssh-server openssh-clients
sudo systemctl enable sshd
sudo systemctl start sshd
sudo yum install postfix
sudo systemctl enable postfix
sudo systemctl start postfix
sudo firewall-cmd --permanent --add-service=http
sudo systemctl reload firewalld

 

2.下载gitlab包:

curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
sudo yum install gitlab-ce

 

或者想要某个确定的版本

sudo yum install gitlab-ce-7.12.0~omnibus-1.x86_64

 

这里要求输入一个git的package的时候,在官网找一个名字就行。

https://packages.gitlab.com/gitlab/gitlab-ce

 

3.修改external_url:

因为默认的是localhost的80端口,但是很多时候都会被占用,在浏览器中访问GitLab出现502错误时,

所以打开 /etc/gitlab/gitlab.rb ,搜索external_url,修改为 external_url 'http://ip地址:端口号'

除了 80 端口外,还有一个unicorn用的端口,默认是8080,如果8080端口被其他程序占用。那么unicorn就会无法启动,显示为502错误,”GitLab is not responding”。

  解决办法:修改 /etc/gitlab/gitlab.rb

  unicorn['listen']='127.0.0.1'

  unicorn['port']=8081

修改完配置文件后都要重启一下gitlab的服务:sudo gitlab-ctl reconfigure

 

4.编译运行:

sudo gitlab-ctl reconfigure

 

如果没有报错,最后提示类似下面的,就算是成功了:

Running handlers complete
Chef Client finished

 

 

如果报错了,Gitlab 默认的日志文件存放在/var/log/gitlab/reconfigure 目录下,可以看一下具体的错误信息。

ERROR: execute[semodule -i /opt/gitlab/embedded/selinux/rhel/7/gitlab-7.2.0-ssh-keygen.pp] (gitlab::selinux line 20) had an error: Mixlib::ShellOut::ShellCommandFailed: Expected process to exit with [0], but received '127'

---- Begin output of semodule -i /opt/gitlab/embedded/selinux/rhel/7/gitlab-7.2.0-ssh-keygen.pp ----

解决方案:sudo yum install libsemanage-static libsemanage-devel

然后重启:sudo gitlab-ctl reconfigure 

 

然后就可以输入之前配置的external_url的ip地址:端口号来登录了,账号默认是root,第一次登录会要求输入密码,写一个自己心仪的密码就好。

 

5.gitlab 常用命令

  gitlab-ctl start
  gitlab-ctl stop
  gitlab-ctl status
  gitlab-ctl restart

  gitlab-ctl tail #查看所有日志
  gitlab-ctl tail nginx/gitlab_access.log #查看nginx访问日志

 

 

注:调用gitlab-ctl start的时候

错误:warning: Insecure world writable dir /usr/local/mysql/bin in PATH, mode 040777。

提示含义:

目录被赋予777的权限,不安全。

解决方案:将提示权限改为775。

sudo chmod go-w /usr/local/mysql/bin

sudo chmod 775 /usr/local/mysql

 

centos7搭建gitlab(二)会介绍如何完成gitlab的仓库迁移

http://blog.csdn.net/u012887385/article/details/73885214

你可能感兴趣的:(教程,Git,Linux)