Gitlab的部署、应用以及502报错解决-centos
Gitlab的部署以及应用GitLab简介GitLab是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,它也是一个自托管的Git项目仓库,是集代码托管,测试,部署于一体的开源git仓库管理软件,可通过web界面来进行访...
Gitlab的部署以及应用
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、安装依赖包:
<span style="color:#333333"><span style="color:black"><code class="language-bash"><span style="color:slategray">#yum install -y curl policycoreutils openssh-server openssh-clients</span></code></span></span>
2、安装邮件服务,postfix设置开机启动,postfix支持gitlab发信功能。
<span style="color:#333333"><span style="color:black"><code class="language-bash"><span style="color:slategray">#yum install -y postfix</span>
<span style="color:slategray">#systemctl enable postfix</span>
<span style="color:slategray">#systemctl start postfix</span></code></span></span>
注意:
如果是开启防火墙firewall,需要以下配置
<span style="color:#333333"><span style="color:black"><code class="language-bash"><span style="color:slategray">#firewall-cmd --permanent --add-service=http</span>
<span style="color:slategray">#systemctl reload firewalld</span></code></span></span>
3、使用国内源,添加GitLab镜像源并安装。
<span style="color:#333333"><span style="color:black"><code class="language-bash"><span style="color:slategray">#vim /etc/yum.repos.d/gitlab_gitlab-ce.repo</span></code></span></span>
添加内容如下:
<span style="color:#333333"><span style="color:black"><code class="language-bash"><span style="color:#999999">[</span>gitlab-ce<span style="color:#999999">]</span>
name<span style="color:#9a6e3a">=</span>gitlab-ce
baseurl<span style="color:#9a6e3a">=</span>http://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7
repo_gpgcheck<span style="color:#9a6e3a">=</span>0
gpgcheck<span style="color:#9a6e3a">=</span>0
enabled<span style="color:#9a6e3a">=</span>1
gpgkey<span style="color:#9a6e3a">=</span>https://packages.gitlab.com/gpg.key</code></span></span>
baseurl源有很多,如果你的是centos6的话,可把下载地址改成https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el6 就可以了。
4、安装gitlab
<span style="color:#333333"><span style="color:black"><code class="language-bash"><span style="color:slategray">#yum install gitlab-ce</span></code></span></span>
安装成功如下:
5、配置启动gitlab
进入gitlab.rb配置文件,配置ip与端口一般配置格式为(external_url 'http://ip或者域名:端口'),如下图所示:
注意得是gitlab默认端口是8080,所以配置的时候需要查看(netstat -ntpl)端口是否被占用
<span style="color:#333333"><span style="color:black"><code class="language-bash"><span style="color:slategray"># vim /etc/gitlab/gitlab.rb</span></code></span></span>
启用gitlab
<span style="color:#333333"><span style="color:black"><code class="language-bash"><span style="color:slategray">#gitlab-ctl reconfigure</span></code></span></span>
启动时间比较久,成功如下:
查看端口http服务是否起来了
我这里可以发现已经是起来了。
6、访问gitlab
第一次访问GitLab,系统会重定向页面到重定向到重置密码页面,你需要输入初始化管理员账号的密码,管理员的用户名为root,初始密码为5iveL!fe。
登陆后会提示一个登陆界面,这个界面是用来更改你的密码,如下图所示:
更完密码后,会跳转到登陆页面,我们直接登录就可以了
用户:root
密码:(更改密码)
之后我们就可以登录到我们直接的gitlab了
二,gitlab汉化配置
汉化一般是适合看英文不习惯的。
安装git
<span style="color:#333333"><span style="color:black"><code class="language-bash"><span style="color:slategray">#yum install -t git</span>
<span style="color:slategray">#mkdir /usr/local/gitlab</span>
<span style="color:slategray">#cd /usr/local/gitlab</span></code></span></span>
下载最新的汉化包:
<span style="color:#333333"><span style="color:black"><code class="language-bash"><span style="color:slategray">#git clone https://gitlab.com/xhang/gitlab.git</span></code></span></span>
停止GitLab并执行如下语句:
<span style="color:#333333"><span style="color:black"><code class="language-bash"><span style="color:slategray">#gitlab-ctl stop</span>
<span style="color:slategray">#cp -rf /usr/local/gitlab/gitlab/* /opt/gitlab/embedded/service/gitlab-rails/</span></code></span></span>
复制时可能不断提示是否要覆盖,这时可能是系统每次执行cp命令时,其实是执行了cp -i命令的别名。出现这种情况可以修改/root/.bashrc,把 “alias cp=’cp-i’改为“alias cp=’cp’即可。
注释后记得执行:
<span style="color:#333333"><span style="color:black"><code class="language-bash">#source /root/.bashrc</code></span></span>
或者你也可以直接使用rsync来同步
<span style="color:#333333"><span style="color:black"><code class="language-bash"><span style="color:slategray">#rsync -avz /usr/local/gitlab/gitlab/* /opt/gitlab/embedded/service/gitlab-rails/</span></code></span></span>
接下来可以重新配置和启动:
<span style="color:#333333"><span style="color:black"><code class="language-bash"><span style="color:slategray"># gitlab-ctl reconfigure</span>
<span style="color:slategray"># gitlab-ctl restart</span></code></span></span>
访问页面,发现已经汉化成功了。
三、gitlab常规维护命令
l 查看gitlab的状态
<span style="color:#333333"><span style="color:black"><code class="language-bash"><span style="color:slategray">#gitlab-ctl status</span></code></span></span>
l 启动gitlab所以组件
<span style="color:#333333"><span style="color:black"><code class="language-bash"><span style="color:slategray">#gitlab-ctl start</span></code></span></span>
l 也可以单独启动某个服务比如nginx
#gitlab-ctl start nginx
l 停止gitlab所有服务
<span style="color:#333333"><span style="color:black"><code class="language-bash"><span style="color:slategray">#gitlab-ctl stop</span></code></span></span>
l 重启gitlab所有服务
<span style="color:#333333"><span style="color:black"><code class="language-bash"><span style="color:slategray">#gitlab-ctl restart</span></code></span></span>
l 查看gitlab所有服务的日志信息
<span style="color:#333333"><span style="color:black"><code class="language-bash"><span style="color:slategray">#gitlab-ctl tail</span></code></span></span>
l 查看某个服务的信息。
<span style="color:#333333"><span style="color:black"><code class="language-bash"><span style="color:slategray">#gitlab-ctl tail nginx</span></code></span></span>
l 查看启动的服务
<span style="color:#333333"><span style="color:black"><code class="language-bash"><span style="color:slategray">#gitlab-ctl service-list</span></code></span></span>
l 更改gitlab文件配置
<span style="color:#333333"><span style="color:black"><code class="language-bash"><span style="color:slategray">#vim /etc/gitlab/gitlab</span></code></span></span>
l Gitlab的nginx目录
<span style="color:#333333"><span style="color:black"><code class="language-bash"><span style="color:slategray">#cd /var/opt/gitlab/nginx/</span></code></span></span>
l Gitlab的nignx日志目录
<span style="color:#333333"><span style="color:black"><code class="language-bash"><span style="color:slategray">#cd /var/log/gitlab/nginx/</span>
或者
<span style="color:slategray">#cd /var/opt/gitlab/nginx/logs</span></code></span></span>
l Gitlabc查看所有服务的配置文件
<span style="color:#333333"><span style="color:black"><code class="language-bash"><span style="color:slategray">#gitlab-ctl show-config</span></code></span></span>
l Gitlab的卸载
<span style="color:#333333"><span style="color:black"><code class="language-bash"><span style="color:slategray">#gitlab-ctl uninstall</span></code></span></span>
四、常见错误以及解决办法
在访问gitlab的时候我们会发现会有502的错误,到底是什么原因
解决办法:
1、权限问题
Gitlab文件需要给予读写的权限
解决办法
<span style="color:#333333"><span style="color:black"><code class="language-bash"><span style="color:slategray">#chmod -R 755 /var/log/gitlab</span></code></span></span>
2、端口问题
Gitlab的默认启动端口是80,8080,所以有肯能会与其他的端口产生冲突,所以需要修改文件。
<span style="color:#333333"><span style="color:black"><code class="language-bash"><span style="color:slategray">#vim /etc/gitlab/gitlab.rb</span></code></span></span>
更改参数
external_url 'http://localhost:8888' #指定访问端口,默认是80
unicorn['listen'] = '127.0.0.1'
unicorn['port'] = 8001 # 为unicorn worker的工作端口,默认为8080,如果你的8080端口被占用的,这一项需要更改。
重启gitlab
<span style="color:#333333"><span style="color:black"><code class="language-bash"><span style="color:slategray">#gitlab-ctl reconfigure</span>
<span style="color:slategray">#gitlab-ctl restart</span></code></span></span>
3、内存不足的问题
安装gitlab的时候,已经说明你的空余内存需要有4G左右的内存,所以在安装gitlab的时候,请给足内存,再安装。
四、总结
学会gitlab的常规安装以及应用和排错,gitlab的应用更github差不多,搭建完就后我们需要进一步的使用git的常规命令操作,更好的使用gitlab。
更多推荐
所有评论(0)