gitlab 本地 定时备份

===============================================

2018-04-26  08:40:52

===============================================

安装全程选择的用户为root

参考文章:http://www.cnblogs.com/straycats/p/7671204.html

此文章基本为粽先生上篇文章的转载,有兴趣的可以看一下粽先生的原文章


 一、环境准备

我们默认一台服务器已成功部署了gitlab。

 


 

 二、手动备份gitlab

很方便,因为gitlab有指令直接支持手动备份。

gitlab-rake gitlab:backup:create

这里要特别说明,如果 /etc/gitlab/gitlab.rb 配置了参数“backup_path”(例如gitlab_rails['backup_path'] = '/backup'),则备份的目录就是该目录下(/backup/);

如果没有配置参数“backup_path”,则gitlab把备份文件生成到默认目录/var/opt/gitlab/backups。


 三、定时自动备份gitlab(本地)

定时备份的思路建立在手动的基础上,通过crontab添加定时计划就可以解决这个问题。

一般添加定时计划可以有2种方式:

1.使用命令crontab -e,将定时任务添加后保存。

2.将定时任务添加到/etc/crontab文件中。

 

我这里采取第一种,使用crontab -e。

crontab -e

例如,我设计一天备份2次,分别在每天12:00、19:00,故我添加下面的内容,并保存。

0 12 * * * /opt/gitlab/bin/gitlab-rake gitlab:backup:create
0 19 * * * /opt/gitlab/bin/gitlab-rake gitlab:backup:create

重启crontab

systemctl restart crond

但是仅仅实现自动备份还是不够,备份如果不能及时清理硬盘的空间很快会不够用,同时也要能够自动清理不需要人工花时间在这一块。


 四、自动清理

这一块由于gitlab已经支持,走简单的方案即可,配置gitlab来实现自动清理功能。

 

vim /etc/gitlab/gitlab.rb

将其中backup_keep_time的配置取消注释,根据需要设置自动清理多少天前的备份,这里设置备份保留7天(7*3600*24=604800),保存。

gitlab_rails['backup_keep_time'] = 604800

重新加载gitlab的配置文件

gitlab-ctl reconfigure

2018-04-26  08:40:52

===============================================

安装全程选择的用户为root

参考文章:http://www.cnblogs.com/straycats/p/7671204.html

此文章基本为粽先生上篇文章的转载,有兴趣的可以看一下粽先生的原文章


 一、环境准备

我们默认一台服务器已成功部署了gitlab。

 


 

 二、手动备份gitlab

很方便,因为gitlab有指令直接支持手动备份。

gitlab-rake gitlab:backup:create

这里要特别说明,如果 /etc/gitlab/gitlab.rb 配置了参数“backup_path”(例如gitlab_rails['backup_path'] = '/backup'),则备份的目录就是该目录下(/backup/);

如果没有配置参数“backup_path”,则gitlab把备份文件生成到默认目录/var/opt/gitlab/backups。


 三、定时自动备份gitlab(本地)

定时备份的思路建立在手动的基础上,通过crontab添加定时计划就可以解决这个问题。

一般添加定时计划可以有2种方式:

1.使用命令crontab -e,将定时任务添加后保存。

2.将定时任务添加到/etc/crontab文件中。

 

我这里采取第一种,使用crontab -e。

crontab -e

例如,我设计一天备份2次,分别在每天12:00、19:00,故我添加下面的内容,并保存。

0 12 * * * /opt/gitlab/bin/gitlab-rake gitlab:backup:create
0 19 * * * /opt/gitlab/bin/gitlab-rake gitlab:backup:create

重启crontab

systemctl restart crond

但是仅仅实现自动备份还是不够,备份如果不能及时清理硬盘的空间很快会不够用,同时也要能够自动清理不需要人工花时间在这一块。


 四、自动清理

这一块由于gitlab已经支持,走简单的方案即可,配置gitlab来实现自动清理功能。

 

vim /etc/gitlab/gitlab.rb

将其中backup_keep_time的配置取消注释,根据需要设置自动清理多少天前的备份,这里设置备份保留7天(7*3600*24=604800),保存。

gitlab_rails['backup_keep_time'] = 604800

重新加载gitlab的配置文件

gitlab-ctl reconfigure

猜你喜欢

转载自www.cnblogs.com/fqxy/p/8949397.html