满堂花醉三千客,一剑霜寒十四洲。这篇文章主要讲述gitlab备份恢复 #yyds干货盘点#相关的知识,希望能为你提供帮助。
1.gitlab备份恢复
1.1.修改gitlab备份路径
[root@gitlab ~]# vim /etc/gitlab/gitlab.rb
gitlab_rails[backup_path] = "/data/gitlab_bak"#gitlab备份存放路径
gitlab_rails[backup_keep_time] = 604800#保留多长时间的文件,以秒来算,这里表示7天
1.2.备份gitlab所有项目
[root@gitlab ~]# gitlab-rake gitlab:bakcup:create
备份结束后会看到在/data/gitlab_bak这个路径有一个tar包如果希望每天备份可以通过cron计划任务来实现
文章图片
1.3.删除项目
点击项目---设置---通用---高级展开---删除项目
文章图片
页面依旧没有new_project项目
文章图片
1.4通过备份还原项目
1)首先停掉gitlab的sidekiq、unicorn进程
[root@gitlab ~]# gitlab-ctl stop sidekiq
ok: down: sidekiq: 0s, normally up
[root@gitlab ~]# gitlab-ctl stop unicorn
ok: down: unicorn: 0s, normally up2)还原
[root@gitlab ~]# ls /data/gitlab_bak/
1598174503_2020_08_23_12.0.3_gitlab_backup.tar
[root@gitlab ~]# gitlab-rake gitlab:backup:restore BACKUP=1598174503_2020_08_23_12.0.3#只复制到版本位置3)重启gitlab
[root@gitlab ~]# gitlab-ctl restart
还原过程:
【gitlab备份恢复 #yyds干货盘点#】输入yes
文章图片
输入yes
文章图片
1.5.还原成功
文章图片
文章图片
2.扩展:从全备中恢复单个项目1)进入具体的项目备份路径
[root@gitlab-bak-20-166 20210426]# cd repositories/technologyCenter/
2)可以看到有很多bundle结尾的文件
[root@gitlab-bak-20-166 technologyCenter]# ls
dailyfreeShare.bundlefreeShare.wiki.bundleonlineProblemstandardAndSystem.bundleweekly.bundleweekly.wiki.bundle
3)找到对应项目的bundle文件然后使用git clone即可还原出来文件
[root@gitlab-bak-20-166 technologyCenter]# git clone weekly.bundle
正克隆到 weekly...
接收对象中: 100% (18181/18181), 49.98 MiB | 42.31 MiB/s, done.
处理 delta 中: 100% (10621/10621), done.
4)查看文件内容
[root@gitlab-bak-20-166 technologyCenter]# ls weekly
测试支持部产品设计部技术运维部平台开发部西安研发部中心例会周报周报模板
5)到此还原成功,然后将项目提交到git上即可完成还原
文章图片
推荐阅读
- Nginx中的模块分类及常见配置项说明
- 搭建PXE远程安装服务器
- 开发一款app系统软件价格大概需要多少钱呢
- 逻辑卷管理(Logical Volume Manager)
- Linux网络基本配置
- cp命令和mv命令的相似之处及不同之处
- #yyds干货盘点#运维自动化发展的4个阶段
- SoDate-7201新一代光伏并网数据采集器-光伏逆变器数据采集器-光伏发电数据采集装置HPLC双模通信+台区智能融合终端+4G云平台方案
- 《信息化项目文档模板十一——系统运维流程工作流程模板》