Gitlib之二----Gitlab数据备份与恢复

实战一:实现gitlab数据备份并恢复

1、对gitlab数据备份

1、在备份gitlab数据前,停止两个服务,不能全部停止gitlab服务,否则无法实现备份

[root@gitlab ~]# gitlab-ctl  stop unicorn
ok: down: unicorn: 1s, normally up
[root@gitlab ~]# gitlab-ctl stop sidekiq
ok: down: sidekiq: 0s, normally up

2、开始备份文件

[root@gitlab ~]# gitlab-rake gitlab:backup:create  # 备份gitlab数据文件
[root@gitlab ~]# ll /var/opt/gitlab/backups/  # 数据备份在此目录下
total 120
-rw------- 1 git git 122880 Feb 29 23:26 1582989964_2020_02_29_11.11.5_gitlab_backup.tar

3、确认备份完成后,然后启动gitlab服务,或者只启动前面停掉的两个服务unicorn和sidekiq服务也可以。

[root@gitlab ~]# gitlab-ctl start 

4、开始模拟删除web1项目

Gitlib之二----Gitlab数据备份与恢复

 5、删除web1项目

Gitlib之二----Gitlab数据备份与恢复

 2、对删除后的数据进行恢复

1、恢复数据前,先停止以下两个服务

[root@gitlab ~]# gitlab-ctl stop unicorn
ok: down: unicorn: 1s, normally up
[root@gitlab ~]# gitlab-ctl stop sidekiq
ok: down: sidekiq: 0s, normally up

2、查看最近备份的文件名称,恢复时不加文件名版本号以后的文件名,开始恢复数据  

[root@gitlab ~]# ll /var/opt/gitlab/backups/  # 备份后的文件名路径
total 120
-rw------- 1 git git 122880 Feb 29 23:26 1582989964_2020_02_29_11.11.5_gitlab_backup.tar  # 备份的文件名
[root@gitlab ~]# gitlab-rake gitlab:backup:restore BACKUP=1582989964_2020_02_29_11.11.5  # 恢复备份的数据,版本以后的文件名不需要写

3、启动gitlab停止的两个服务,或者全部启动,启动的服务不会再启动,只会启动未启动的服务。

[root@gitlab ~]# gitlab-ctl start

4、此时可以查看web1项目已经恢复

Gitlib之二----Gitlab数据备份与恢复

 实战二:实现gitlab汉化翻译

 1、需要在网站上下载语言包进行替换,需要选择对应的gitlab包

   中文版下载地址:https://gitlab.com/xhang/gitlaGitlib之二----Gitlab数据备份与恢复

 2、先将gitlab服务停止,将/opt/gitlab/embedded/service/gitlab-rails/目录下的文件进行备份,以防无法翻译成中文,导致gitlab无法正常运行,然后将下载的中文包解压并复制到指定的目录下/opt/gitlab/embedded/service/gitlab-rails/目录下,最后启动gitlab服务。

[root@gitlab ~]# gitlab-ctl stop   # 停止gitlab服务
[root@gitlab ~]# cp -rp /opt/gitlab/embedded/service/gitlab-rails/  /opt/gitlab-rails.bak  # 将gitlab的文件备份
[root@gitlab src]# ls  # 将下载好的中文传到/usr/local/src
gitlab-v11.11.5-zh  gitlab-v11.11.5-zh.tar
[root@gitlab src]# tar  xvf gitlab-v11.11.5-zh.tar  # 将文件进行解压
[root@gitlab src]# cp -rf  gitlab-v11.11.5-zh/*  /opt/gitlab/embedded/service/gitlab-rails/    # 将解压的中文包全部复制到指定的目录下。
[root@gitlab src]# gitlab-ctl reconfigure  # 重新启动gitlab服务
[root@gitlab src]# gitlab-ctl start  # 启动gitlab服务

3、登陆gitlab网页,此时可以看到gitlab已经汉化Gitlib之二----Gitlab数据备份与恢复

3、也可以再次将中文改回英文Gitlib之二----Gitlab数据备份与恢复