记自己本地安装gitlab(CentOS7)

搭建背景

由于当前公司性质的原因,公司一直在使用SVN的方式进行项目版本控制,但是随着公司项目的日益扩大,进行版本管理也越来越困难,因此公司项目组决定开始使用GIT来进行项目版本控制。因为之前曾就职于一家基金公司,使用过gitlab对项目进行管理,所以有幸主导gitlab的搭建,以方便更好的进行项目的维护。以下是整个搭建过程以及遇到的坑,特此撰文以记之:

提示:本次安装基于CentOS7,Gitlab-10.8.2

安装之前的准备

由于gitlab的安装包下载比较慢,使用git的克隆或wget下载汉化包非常慢,因此建议本地先下载好安装包

 

安装必要软件

安装Git

监测是否安装过git(若出现版本号,则代表已经安装了git,可跳过git安装,若出现 git: command not found.  则没有安装过)

git --version 

由于特殊原因,请先确认linux版本

  • cetos5以及以下版本中的yum都没有git,无法使用yum安装
  • cetos6可以使用yum安装git,但是安装的git是1.7.1版本的(如果后期还需使用github,则请通过git源码编译的方式安装,因为GitHub需要的git版本最低不低于1.7.2)
  • cetos7以及以上版本的,推荐使用yum安装,方便

使用yum方式安装git

yum -y install git

安装unzip,Patch(如果不需要汉化则跳过)

yum -y install zip         // 用来压缩文件为zip包
yum -y install unzip       // 用来解压zip包
yum -y install patch       // 用于修补文件,汉化时用

 

安装gitlab

安装必须软件

如果后期需要gitlab的邮箱功能,请在安装Gitlab前要先安装postfix,即使不需要也建议执行以下操作(python依赖包为必须)

(以下操作主要安装了ssh服务器[使git能够以ssh方式连接gitlab],postfix,cronie,python依赖包)

yum install curl openssh-server postfix cronie 
yum -y install policycoreutils-python   // 必须安装该依赖包

下载安装rpm包(该步可通过网盘直接下载然后传到linux上)

wget --content-disposition https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-10.8.2-ce.0.el7.x86_64.rpm/download.rpm

rpm -ivh gitlab-ce-10.8.2-ce.0.el7.x86_64.rpm

如果为centOS6请将上述https地址改为

https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el6/gitlab-ce-10.8.2-ce.0.el7.x86_64.rpm/download.rpm

安装完成会出现gitlab的logo,如下图所示

注:安装完成后会出现以上文本,特别注意logo下的提示,即接下来我们只需要按照提示执行即可

GitLab was unable to detect a valid hostname for your instance
Please configure a URL for your GitLab instance by setting `external_url`
configuration in /etc/gitlab/gitlab.rb file.
Then, you can start your GitLab instance by running the following command.
  sudo gitlab-ctl reconfigure

GitLab需要为你的实例指定一个有效的hostname,请在/etc/gitlab/gitlab.rb的配置文件中通过设置
external_url 属性的值为你的GitLab设置URL,然后,你可以通过运行以下命令来开启你的GitLab实例
   sudo gitlab-ctl reconfigure
  • 修改/etc/gitlab/gitlab.rb文件
vi /etc/gitlab/gitlab.rb
  • 找到external_url属性(在非编辑状态下可通过 `/ external_url` 的方式直接定位到此属性的位置,然后使用 i 切换为编辑模式,然后修改为自己本机的IP,如果external_url属性前有 # 请先将其去除,也可以复制此行后再做修改
external_url 'http://192.168.2.222'
  • 激活配置并启动GitLab实例(此步首次执行时间较长,在5分钟左右,后续如果变更配置重启,将会变快到1分钟半左右,执行时间可能根据不同机器的配置而有所偏差)
gitlab-ctl reconfigure
  • 其他相关命令(上述步骤已经将gitlab实例启动了,以下命令为gitlab的补充命令,无需执行,可直接跳过

gitlab-ctl status       // gitlab各个组件的运行状态
gitlab-ctl stop         // 关闭gitlab实例
gitlab-ctl start        // 开启gitlab实例
gitlab-ctl restart      // 重启gitlab实例
gitlab-ctl reconfigure  // 更新gitlab配置并重启
gitlab-ctl tail         // gitlab运行过程中的实时log

Web页面进行root用户登录

可通过执行以下命令查看当前的GitLab实例的版本

cat /opt/gitlab/embedded/service/gitlab-rails/VERSION
  • gitlab 8.8版本之前默认账号 root 密码 5iveL!fe
  • gitlab 8.9之后登录web界面会要求更改密码,注意密码最少8位!!(此次安装的是10.8.2

如忘记密码可在gitlab数据库修改密码文档链接:https://blog.csdn.net/qq_40025218/article/details/81363126

此处如果是502,则请先多刷新几次,如果一直是502,则请通过 gitlab-ctl tail 命令查看错误日志或进行卸载重装

注:如果安装GitLab出现ruby_block[supervise_redis_sleep] action run

一般出现在卸载gitlab然后再次安装执行sudo gitlab-ctl reconfigure的时候往往会出现:ruby_block[supervise_redis_sleep] action run,会一直卡无法往下进行!

解决方案:

  1. 按住CTRL+C强制结束;
  2. 运行:sudo systemctl restart gitlab-runsvdir;
  3. 再次执行:sudo gitlab-ctl reconfigure

注:有可能因为某些误操作导致页面出现502,而不是登录页面,则需要卸载,卸载参考 卸载gitlab 章节


汉化gitlab

获取gitlab汉化包

可以使用git clone的方式或通过wget下载或通过本地下载再上传到服务器

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

wget https://gitlab.com/xhang/gitlab/-/archive/10-8-stable-zh/10-8-stable-zh.tar.gz

 

对比文件并汉化

如果是wget下载的压缩包或上传的压缩包,请提前解压好,然后使用git生成.diff文件

cd gitlab     // 先进入gitlab目录
git diff v10.8.2 v10.8.2-zh  > ../v10.8.2-zh.diff

将刚才的diff文件做为补丁导入到gitlab中(此步如果卡住或询问是否覆盖路回车跳过即可!)

patch -d /opt/gitlab/embedded/service/gitlab-rails -p1 <  ../v10.8.2-zh.diff

启动并重新配置

gitlab-ctl start   
gitlab-ctl reconfigure   // 若访问web出现502,先多刷新几次,如果不行,可重新执行此命令再访问

卸载gitlab

  • 停止gitlab
gitlab-ctl stop
  • 卸载gitlab
rpm -e gitlab-ce
  • 查看gitlab进程,如果有一大堆则证明还存在gitlab进程,如果没有则跳过杀进程的步骤
ps aux | grep gitlab
  • 杀进程
kill -9 9763                 // 9763为gitlab的进程号(出现很多.的那个进程)

如果执行杀死进程后,使用 ps aux | grep gitlab 还有进程请用以下命令杀死所有进程

ps -ef | grep gitlab | xargs kill -s 9 
  • 删除所有包含gitlab文件

find / -name gitlab | xargs rm -rf

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

冰式的美式

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值