gitlab(六):gitlab的备份和恢复
gitlab的备份和恢复
备份
- 配置文件中加入
gitlab_rails['backup_path']='/home/admin/data_bak/gitlab_bak' gitlab_rails['backup_keep_time']=604800
- 如果自定义备份目录需要赋予git权限
mkdir /home/admin/data_bak/gitlab_bak chown -R git.git /home/admin/data_bak/gitlab_bak
- 重启配置启动
gitlab-ctl reconfigure gitlab-ctl restart
- 定时任务crontab中加入
0 2 * * * /usr/bin/gitlab-rake gitlab:backup:create
策略建议:本地保留三到七天,在异地备份永久保存
恢复
- 停止数据写入服务
- gitlab-ctl stop unicorn
- gitlab-ctl stop sidekiq
- gitlab-rake gitlab:backup:restore BACKUP=1492296095
- date -d @1492296095
定时任务应该手动执行一下,查看是否备份成功,注意环境变量。
不同版本的gitlab备份名称不一样。
1、定时任务应该手动执行一下,查看是否备份成功,注意环境变量。
2、不同版本的gitlab备份名称不一样。或者获取备份文件名称不一样。例如我所用的版本,备份名称+时间戳,而恢复时,调用的不带时间戳,产生以下文件找不到的错误
The backup file 1499105084_gitlab_backup.tar does not exist!
---改备份名再来---
3、恢复之后30s才能使用