GitLab中文网站 > 使用技巧 > Gitlab如何设置备份完成后压缩 Gitlab如何删除旧备份

Gitlab如何设置备份完成后压缩 Gitlab如何删除旧备份

发布时间:2024-12-05 18: 21: 00

品牌型号:联想拯救者R7000

系统:Windows 10专业版

软件版本:JiHu GitLab 17.3.0-jh

我们在使用Gitlab时,尤其是团队自己搭建的Gitlab,强烈建议及时做数据备份,这样可以确保代码和项目的安全。但备份文件可能占用大量存储空间,把备份文件进行压缩可以有效节省空间。定期删除旧备份也可以有效清理磁盘空间。本文将为大家介绍Gitlab如何设置备份完成后压缩,Gitlab如何删除旧备份的相关内容,帮助你高效管理GitLab备份文件。

一、Gitlab如何设置备份完成后压缩

GitLab的备份非常灵活,我们可以备份完成后通过脚本实现自动压缩。以下是具体操作步骤:

1、配置备份路径

(1)确保已正确配置GitLab的备份路径。默认情况下,备份文件存储在【/var/opt/gitlab/backups】目录下。

(2)如果需要更改,我们可以修改配置文件(位于【/etc/gitlab/gitlab.rb】中)的【gitlab_rails['backup_path']】参数,设置成指定的路径。

备份路径
图1:备份路径

(3)执行【gitlab-ctl reconfigure】使配置生效。

配置生效
图2:配置生效

2、创建备份脚本

备份文件默认是【.tar】格式,我们可以通过压缩指令,将【.tar】文件压缩为【.tar.gz】的压缩格式。下图是一个简单的脚本文件,默认保存路径没有更改,供大家参考。

sh脚本文件
图3:sh脚本文件

将此脚本保存为【abc.sh】,并使用命令【chmod +x abc.sh】赋予可执行权限:

赋予可执行权限
图4:赋予可执行权限

3、自动化执行脚本

为了让脚本在备份完成后自动执行,可以将其集成到Gitlab的【gitlab.rb】文件中。

(1)修改以下参数:

gitlab_rails['backup_archive_permissions'] = 0644

gitlab_rails['backup_'] = “/root/demo/abc.sh”

修改参数
图5:修改参数

(2)修改完成后,再次运行【gitlab-ctl reconfigure】让配置生效。

4、测试验证

手动运行备份命令【gitlab-backup create】,查看备份文件被压缩为【.tar.gz】格式。

备份后完成压缩
图6:备份后完成压缩

二、Gitlab如何删除旧备份

如果每天都需要备份,那么长期积累下来,会占用大量存储空间,因此我们需要定期删除旧备份。我们除了可以手动删除之外,还可以通过配置文件来设置自动删除策略。

1、设置保留时间

(1)在【gitlab.rb】文件中,【gitlab_rails['backup_keep_time'] = 604800】,604800单位是秒,表示保留7天。

配置备份文件保留时间
图7:配置备份文件保留时间

(2)配置完成后,使用【gitlab-ctl reconfigure】命令让配置生效。系统会根据设置的时间自动清理备份文件。

2、使用自定义脚本清理备份

如果需要每天定时清理旧备份,可以使用脚本实现。实现的基本思路是:

1、写一个脚本,用来删除旧的备份。

2、配置定时任务,通过cron表达式定期执行脚本。

三、总结

以上就是Gitlab如何设置备份完成后压缩,Gitlab如何删除旧备份的相关内容。参考上文内容,我们可以设置Gitlab备份完成后自动压缩,压缩备份、定期清理旧备份能够节省空间。本文还介绍了两种自动删除旧备份的操作方法,分别是修改配置文件和使用自定义脚本,希望本文对你有所帮助。

 

署名:Hungry

 

展开阅读全文

标签:极狐gitlabgitlab备份gitlab数据备份

读者也访问过这里:
极狐GitLab
助力企业数字化转型
立即购买
最新文章
GitLab源码编译搭建 GitLab可以创建组吗
GitLab是一款企业级代码管理与协作平台,支持私有化部署。其内置了CI/CD功能,我们可以搭建环境后,一键部署项目。在管理项目或者项目团队成员时,创建组可以更加方便,GitLab怎么搭建编译环境?怎么创建组呢?本文将为大家介绍GitLab源码编译搭建,GitLab可以创建组吗的相关内容。
2025-12-15
Gitlab编译环境搭建 Gitlab CI是什么文件
GitLab是一款代码管理工具,支持本地私有化部署,并且集成了CI/CD功能,是很多团队协作与代码管理的重要工具,使用GitLab需要搭建编译环境,例如JDK环境,并且需要知道CI配置文件是什么。本文将为大家介绍Gitlab编译环境搭建,Gitlab CI是什么文件的相关内容。
2025-12-15
GitLab如何删除项目的评论 GitLab如何删除目录
GitLab是一款很多开发团队正在使用的代码管理与团队协作平台,支持本地私有化部署,因此很多金融、医疗行业选择私有化部署GitLab服务。我们在开发项目的过程中,可能项目仓库的评论需要删除,或者项目目录结构混乱,需要整理文件夹目录,这就需要我们掌握删除项目评论和目录的方法。本文将为大家介绍GitLab如何删除项目的评论,GitLab如何删除目录的相关内容。
2025-12-15
Jenkins和GitLab哪个好 GitLab CI/CD怎么用
在实际开发中,借助Jenkins工具或者GitLab的CI/CD功能,可以快速部署项目。很多用户不知道这两款工具应该怎么选择,如果团队正在使用GitLab,并且流程不复杂,使用GitLab CI/CD即可实现自动部署。若项目流程复杂,再考虑Jenkins。本文将为大家介绍Jenkins和GitLab哪个好,GitLab CI/CD怎么用的相关内容。
2025-12-15
GitLab如何配置Shell Runner GitLab如何配置Java环境
GitLab不仅是一个代码管理仓库,还提供了CI/CD功能,可以自动跑代码、测代码,前提是需要配置Runner以及Java环境变量。本文将为大家介绍Gitlab如何配置Shell Runner,Gitlab如何配置Java环境的相关内容。
2025-11-14
GitLab如何导入GitHub项目 GitLab如何导入Gitee项目
很多人用GitHub或者Gitee存储代码,假如公司搭建了GitLab平台,需要把代码统一挪到GitLab里管理,GitLab针对GitHub平台提供了【导入功能】,但是对于Gitee没有提供官方的导入功能,应该怎么才能导入呢?本文将为大家介绍GitLab如何导入GitHub项目,GitLab如何导入Gitee项目的相关内容。
2025-11-14

读者也喜欢这些内容:

咨询热线 400-8765-888