实战一:实现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项目
5、删除web1项目
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项目已经恢复
实战二:实现gitlab汉化翻译
1、需要在网站上下载语言包进行替换,需要选择对应的gitlab包
中文版下载地址:https://gitlab.com/xhang/gitla
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已经汉化
3、也可以再次将中文改回英文