Gitlab的部署、应用以及502报错解决-centos

GitLab简介

GitLab是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,它也是一个自托管的Git项目仓库,是集代码托管,测试,部署于一体的开源git仓库管理软件,可通过web界面来进行访问公开的或私人项目。现阶段的大小企业都在使用gitlab来测试发布代码。GitLab提供的不仅仅是线上的,强大的它能可以让用户自己部署,发布自己的项目,这一点是github上没有的。

Git的分支有很多,从发展到现在,已经从只是一个简单的工具(如git),发展成了库(如gitlib,github),一直又延生到软件系统等等(如gitlab),说明git的作用非常重要,这是毋庸置疑的。

废话不多说,接下来我们来安装gitlab,实现自己的git仓库管理,安装gitlab官网上也说明了需要的linux配置比较高点,至少4GB的可内存(RAM交换)来安装和使用GitLab。接下来我们需要手动安装,你也可以安装官网的来安装,不过个人不是很推荐。官网安装地址https://about.gitlab.com/installation/#centos-7

手动安装(centos7):

一、gitlab的安装

1、安装依赖包:

1

#yum install  -y curl policycoreutils openssh-server openssh-clients

2、安装邮件服务,postfix设置开机启动,postfix支持gitlab发信功能

1

2

3

#yum install -y postfix

#systemctl enable postfix

#systemctl start postfix

注意:

如果是开启防火墙firewall,需要以下配置

1

2

#firewall-cmd --permanent --add-service=http

#systemctl reload firewalld

3、使用国内源,添加GitLab镜像源并安装。

1

#vim /etc/yum.repos.d/gitlab_gitlab-ce.repo

添加内容如下:

1

2

3

4

5

6

7

[gitlab-ce]

name=gitlab-ce

baseurl=http://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7

repo_gpgcheck=0

gpgcheck=0

enabled=1

gpgkey=https://packages.gitlab.com/gpg.key

baseurl源有很多,如果你的是centos6的话,可把下载地址改成https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el6 就可以了。

4、安装gitlab

1

#yum install gitlab-ce

安装成功如下:

5、配置启动gitlab

进入gitlab.rb配置文件,配置ip与端口一般配置格式为(external_url 'http://ip或者域名:端口'),如下图所示:

注意得是gitlab默认端口是8080,所以配置的时候需要查看(netstat -ntpl)端口是否被占用

1

# vim  /etc/gitlab/gitlab.rb

启用gitlab

1

#gitlab-ctl reconfigure

启动时间比较久,成功如下:

查看端口http服务是否起来了

我这里可以发现已经是起来了。

6、访问gitlab

   第一次访问GitLab,系统会重定向页面到重定向到重置密码页面,你需要输入初始化管理员账号的密码,管理员的用户名为root,初始密码为5iveL!fe。

登陆后会提示一个登陆界面,这个界面是用来更改你的密码,如下图所示:

更完密码后,会跳转到登陆页面,我们直接登录就可以了

用户:root

密码:(更改密码)

之后我们就可以登录到我们直接的gitlab了

二,gitlab汉化配置

汉化一般是适合看英文不习惯的。

安装git

1

2

3

#yum install -t git

#mkdir  /usr/local/gitlab

#cd /usr/local/gitlab

下载最新的汉化包:

1

#git clone https://gitlab.com/xhang/gitlab.git

停止GitLab并执行如下语句:

1

2

#gitlab-ctl stop

#cp -rf /usr/local/gitlab/gitlab/*  /opt/gitlab/embedded/service/gitlab-rails/

复制时可能不断提示是否要覆盖,这时可能是系统每次执行cp命令时,其实是执行了cp -i命令的别名。出现这种情况可以修改/root/.bashrc,把 “alias cp=’cp-i’改为“alias cp=’cp’即可。

注释后记得执行:

1

#source /root/.bashrc

或者你也可以直接使用rsync来同步

1

#rsync -avz /usr/local/gitlab/gitlab/*  /opt/gitlab/embedded/service/gitlab-rails/

接下来可以重新配置和启动:

1

2

# gitlab-ctl reconfigure

# gitlab-ctl restart

访问页面,发现已经汉化成功了。

三、gitlab常规维护命令

l  查看gitlab的状态

1

#gitlab-ctl status

l  启动gitlab所以组件

1

#gitlab-ctl start

l  也可以单独启动某个服务比如nginx

#gitlab-ctl start nginx

l  停止gitlab所有服务

1

#gitlab-ctl stop

l  重启gitlab所有服务

1

#gitlab-ctl restart

l  查看gitlab所有服务的日志信息

1

#gitlab-ctl tail

l  查看某个服务的信息。

1

#gitlab-ctl tail nginx

l  查看启动的服务

1

#gitlab-ctl service-list

l  更改gitlab文件配置

1

#vim /etc/gitlab/gitlab

l  Gitlab的nginx目录

1

#cd /var/opt/gitlab/nginx/

l  Gitlab的nignx日志目录

1

2

3

#cd /var/log/gitlab/nginx/

或者

#cd /var/opt/gitlab/nginx/logs

l  Gitlabc查看所有服务的配置文件

1

#gitlab-ctl show-config

l  Gitlab的卸载

1

#gitlab-ctl uninstall

四、常见错误以及解决办法

在访问gitlab的时候我们会发现会有502的错误,到底是什么原因

解决办法:

1、权限问题

Gitlab文件需要给予读写的权限

解决办法

1

#chmod -R 755 /var/log/gitlab

2、端口问题

Gitlab的默认启动端口是80,8080,所以有肯能会与其他的端口产生冲突,所以需要修改文件。

1

#vim /etc/gitlab/gitlab.rb

更改参数

external_url 'http://localhost:8888' #指定访问端口,默认是80

unicorn['listen'] = '127.0.0.1'

unicorn['port'] = 8001    # 为unicorn worker的工作端口,默认为8080,如果你的8080端口被占用的,这一项需要更改。

重启gitlab

1

2

#gitlab-ctl reconfigure

#gitlab-ctl restart

3、内存不足的问题

安装gitlab的时候,已经说明你的空余内存需要有4G左右的内存,所以在安装gitlab的时候,请给足内存,再安装。

四、总结

学会gitlab的常规安装以及应用和排错,gitlab的应用更github差不多,搭建完就后我们需要进一步的使用git的常规命令操作,更好的使用gitlab。

1

这篇文章还没有评论

发表评论