热门搜索 :
考研考公
您的当前位置:首页正文

GitLab安装-部署-汉化-备份-升级

来源:东饰资讯网

选择将用来搭建 GitLab CE 的操作系统:

CentOS 7 (and RedHat/Oracle/Scientific Linux 7)

本次以GitLab 9.0 的安装与汉化进行例子

1. 安装配置依赖项

首先对自己的环境进行确认,我搭建的环境是阿里云镜像Cenots7.2 64位版本

进入系统后我进行了所有依赖yum 环境的更新

yum update

在 Centos 6 和 7 系统上, 下面的命令将在系统防火墙里面开放HTTP和SSH端口.

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 systemctl reload firewalld


2. 添加GitLab仓库,并安装到服务器上

可以选择使用 yum 一键安装包 一般默认最高版本

sudo yum install gitlab-ce

rpm -i gitlab-ce-XXX.rpm


3. 启动GitLab

#载入配置启动 (安装好后执行就默认启动了,每次修改配置都需要进行载入配置启动)
sudo gitlab-ctl reconfigure  

(下面是日常基本操作)
#启动GitLab所以组件
sudo gitlab-ctl start

#重启GitLab所有组件
sudo gitlab-ctl stop

4. 使用浏览器访问GitLab

首次访问GitLab,系统会让你重新设置管理员的密码,设置成功后会返回登录界面.

默认的管理员账号是root,如果你想更改默认管理员账号,请输入上面设置的新密码登录系统后修改帐号名.


5.进行GitLab的汉化

Omnibus 安装汉化

1. 使用 marbleqi 制作的汉化增量补丁包(未使用过此方法)

注: 使用该汉化补丁包需要重新配置编译资源文件 (没找到链接- -!)

sudo gitlab-ctl reconfigure

2. 手动导出汉化补丁包汉化

请先使用官方包安装或升级完成,确认当前版本。

(首先做好备份,不然失败后你会很痛苦的 后面会讲到备份!建议先看)

sudo cat /opt/gitlab/embedded/service/gitlab-rails/VERSION

假设当前版本为 v9.0.0,并确认汉化版本库是否包含该版本的汉化标签(-zh结尾),也就是是否包含 v9.0.0-zh。

如果版本相同,首先在本地 clone 仓库。

# 克隆汉化版本库

# 如果已经克隆过,则进行更新

git fetch

然后比较汉化标签和原标签,导出 patch 用的 diff 文件。

# 导出9.0.0 版本的汉化补丁

git diff v9.0.0 v9.0.0-zh > ../9.0.0-zh.diff

然后上传 9.0.0-zh.diff 文件到服务器。

# 停止 gitlab

sudo gitlab-ctl stop

sudo patch -d /opt/gitlab/embedded/service/gitlab-rails -p1 < 9.0.0-zh.diff

确定没有 .rej 文件,重启 GitLab 即可。

sudo gitlab-ctl start

执行重新配置命令

sudo gitlab-ctl reconfigure

如果汉化中出现问题,请重新安装 GitLab(注意备份数据)。

6.备份与升级

汉化备份

#在汉化之前把此文件目录压缩备份起来
zip filename.zip /opt/gitlab/embedded/service/gitlab-rails

#如果汉化出现问题再将此压缩包放回去

/opt/gitlab/embedded/service/gitlab-rails 主要是gitlab的web主要文件夹

Gitlab 创建备份(这是一个标准的备份方式)

使用Gitlab一键安装包安装Gitlab非常简单, 同样的备份恢复与迁移也非常简单. 使用一条命令即可创建完整的Gitlab备份:

gitlab-rake gitlab:backup:create

使用以上命令会在/var/opt/gitlab/backups目录下创建一个名称类似为1393513186_gitlab_backup.tar的压缩包, 这个压缩包就是Gitlab整个的完整部分, 其中开头的1393513186是备份创建的日期.

Gitlab 修改备份文件默认目录

你也可以通过修改/etc/gitlab/gitlab.rb来修改默认存放备份文件的目录:

gitlab_rails['backup_path'] ='/mnt/backups'  #例如修改到此路径下

/mnt/backups修改为你想存放备份的目录即可, 修改完成之后使用gitlab-ctl reconfigure命令重载配置文件即可.

Gitlab 自动备份

也可以通过crontab使用备份命令实现自动备份:

sudosu -crontab -e

加入以下, 实现每天凌晨2点进行一次自动备份:

0 2 * * * /opt/gitlab/bin/gitlab-rake gitlab:backup:create

Gitlab 恢复

同样, Gitlab的从备份恢复也非常简单:

# 停止相关数据连接服务
gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq

# 从1393513186编号备份中恢复
gitlab-rake gitlab:backup:restore BACKUP=1393513186

# 启动Gitlab
sudo gitlab-ctlstart

#注意恢复的版本要一致哟!!!


Gitlab迁移

迁移如同备份与恢复的步骤一样, 只需要将老服务器/var/opt/gitlab/backups目录下的备份文件拷贝到新服务器上的/var/opt/gitlab/backups即可(如果你没修改过默认备份目录的话). 但是需要注意的是新服务器上的Gitlab的版本必须与创建备份时的Gitlab版本号相同. 比如新服务器安装的是最新的7.60版本的Gitlab, 那么迁移之前, 最好将老服务器的Gitlab 升级为7.60在进行备份.


Gitlab升级
(升级前做好备份)

#一键安装的更新方式

# Debian/Ubuntu

sudo apt-get update

sudo apt-get install gitlab-ce

# Centos/RHEL

sudo yum install gitlab-ce

dpkg -i gitlab-ce-XXX.deb

# CentOS/RHEL

rpm -Uvh gitlab-ce-XXX.rpm

Top