一、GitLab 介绍
GitLab 是一个用于仓库管理系统的开源项目。使用 Git 作为代码管理工具,并在此基础上搭建起来的 Web 服务。可通过 Web 界面进行访问公开的或者私人项目。它拥有 GitHub 类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。团队成员可以利用内置的简单聊天程序(Wall)进行交流。它还提供了一个代码片段收集功能可以轻松实现代码复用。
常用的网站:
官网:https://about.gitlab.com/
国内镜像:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/
安装参考文档:https://www.myfreax.com/how-to-install-and-configure-gitlab-on-centos-7/
二、Centos7 安装 GitLab
2.1 安装
# 安装依赖
sudo yum install -y curl policycoreutils-python openssh-server
# 安装Postfix,postfix支持gitlab发信功能
sudo yum install postfix
# 启动并启用后缀服务
sudo systemctl start postfix
sudo systemctl enable postfix
# 将GitLab存储库添加到系统源列表中
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
# 安装 GitLab
sudo yum install -y gitlab-ce
安装成功将返回:
_______ __ __ __
/ ____(_) /_/ / ____ _/ /_
/ / __/ / __/ / / __ `/ __
/ /_/ / / /_/ /___/ /_/ / /_/ /
\____/_/\__/_____/\__,_/_.___/
Thank you for installing GitLab!
...
Complete!
2.2 修改GitLab访问URL配置
# 安装 nano 命令
sudo yum install -y nano
# 打开配置文件
sudo nano /etc/gitlab/gitlab.rb
# 找到 external_url 'http://gitlab.example.com' 将其修改为本地Ip
external_url 'http://gitlab.example.com'
# 点击 ctrl+X , 然后输入 y 然后回车保存
# 重新配置 GitLab
sudo gitlab-ctl reconfigure
# 启动 GitLab
gitlab-ctl restart
2.3 启动 GitLab
访问 http://192.168.205.10:7777 打开如下页面:
初次登陆,需要设置密码。
如果出现 502 需要确认以下几点:
-
可用运行内存大于4G
-
端口未被占用
-
需要赋予权限
chmod -R 755 /var/log/gitlab
三、安装中文补丁
3.1 查看当前 GitLab 版本:
cat /opt/gitlab/embedded/service/gitlab-rails/VERSION
当前版本:
13.3.6
3.2 停止 GitLab 服务:
sudo gitlab-ctl stop
3.3 获取并安装补丁包
前往 https://gitlab.com/xhang 获取汉化补丁链接,发现最新的汉化包是 v12.3, 我们以它为例记录下:
下载补丁包:
wget https://gitlab.com/xhang/gitlab/-/archive/12-3-stable-zh/gitlab-12-3-stable-zh.tar
解压补丁包:
tar -xvf gitlab-12-3-stable-zh.tar
查看补丁包版本是否一致:
cat gitlab-12-3-stable-zh/VERSION
版本一致,接下来准备安装汉化包
cp -rf gitlab-11-8-stable-zh/* /opt/gitlab/embedded/service/gitlab-rails/
重新初始化 GitLab
gitlab-ctl reconfigure
重新启动 GitLab 服务
gitlab-ctl restart
四、卸载 GitLab
4. 1 停止服务
sudo gitlab-ctl stop
4.2 执行卸载
sudo rpm -e gitlab-ce
4.3 删除进程
# 查看进程
ps -ef|grep gitlab
# 删除第一个守护进程 (runsvdir -P /opt/gitlab/service log)
sudo kill -9 980
4.4 删除 GitLab 文件
# 删除所有包含gitlab的文件及目录
find / -name *gitlab*|xargs rm -rf
find / -name gitlab |xargs rm -rf