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如何配置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
Gitlab Runner是什么 Gitlab Runner如何配置
在现代的软件开发流程中,持续集成与持续交付(CI/CD)可以有效提高代码质量与工作效率,避免出现大规模代码Bug的情况。Gitlab Runner是GitLab CI/CD的核心组件,主要负责运行自动化任务。本地部署GitLab时,建议掌握GitLab runner的配置方法,尽可能发挥GitLab的全部功能。本文将为大家介绍Gitlab Runner是什么,Gitlab Runner如何配置的相关内容。
2025-11-14
Git、GitHub、GitLab有什么区别 Git和GitLab使用教程
在软件开发的流程中,版本控制与协作平台是推动项目前进的重要基石。Git、GitHub与GitLab都是代码版本控制工具,这三者并不是同一个东西,对于初次接触大型项目开发的用户来说,了解三者关系不仅可以有效提升开发效率,还能提升代码提交的质量。本文将为大家介绍Git、GitHub、GitLab有什么区别,Git和GitLab使用教程的相关内容。
2025-11-14
GitLab可以安装在Windows上吗 GitLab可以代码审查吗
GitLab是一个代码管理平台,可以将本地代码推送到远程仓库,从而实现和同事协作开发,相比于其他代码管理平台,GitLab支持本地部署,那么GitLab可以安装在Windows上吗?提交代码时,一个重要功能就是【代码审查】,那么GitLab可以代码审查吗?本文将为大家回答这两个问题。
2025-10-30
Gitlab CI是什么 Gitlab-CI/CD自动化部署的流程是什么
在现代软件开发的流程中,持续集成与持续部署(CI/CD)是保障开发效率与交付质量的核心。GitLab作为一款专业的DevOps平台,其内置了CI/CD工具链,可以帮我们自动化部署,提高开发效率。本文将为大家介绍Gitlab CI是什么,Gitlab-CI/CD自动化部署的流程是什么的相关内容。
2025-10-30

读者也喜欢这些内容:

咨询热线 400-8765-888