首页 > 其他分享 >GitLab的备份与恢复

GitLab的备份与恢复

时间:2024-11-26 12:43:47浏览次数:6  
标签:gitlab 恢复 备份 GitLab data docker backup

一、备份

1. docker执行备份

docker exec gitlab gitlab-rake gitlab:backup:create

默认将备份文件保存至docker的/var/opt/gitlab/backups/ 目录

这条命令是在 Docker 容器内部执行 GitLab 的备份操作。让我来解释一下这个命令的各个部分:
docker exec:这是 Docker 命令,用于在正在运行的容器内部执行命令。
gitlab:指定要操作的容器名称或 ID,即运行 GitLab 服务的容器。
gitlab-rake gitlab:backup:create:这部分是在 GitLab 容器内部执行的实际命令。具体来说:
gitlab-rake:是 GitLab 提供的用于管理数据库和执行其他任务的命令行工具。
gitlab:backup:create:是使用 gitlab-rake 工具创建 GitLab 数据库备份的命令。
通过执行这条命令,GitLab 将会在容器内部创建一个数据库备份。这样可以确保数据的安全性和可恢复性。

执行完会有一个警告

Warning: Your gitlab.rb and gitlab-secrets.json files contain sensitive data 
and are not included in this backup. You will need these files to restore a backup.
Please back them up manually.

这个警告是在执行 GitLab 备份时提醒您,备份文件中不包含 gitlab.rbgitlab-secrets.json 这两个文件,这两个文件包含了敏感数据,例如配置信息和加密密钥,因此在恢复备份时需要手动备份这两个文件。
为了确保完整的备份和恢复过程,请务必手动备份 gitlab.rbgitlab-secrets.json 文件。

2. 备份敏感数据

docker cp gitlab:/var/opt/gitlab/backups/1709697433_2024_03_06_13.6.2_gitlab_backup.tar  /data/gitlab-bak/
docker cp gitlab:/etc/gitlab/gitlab.rb  /data/gitlab-bak/
docker cp gitlab:/etc/gitlab/gitlab-secrets.json  /data/gitlab-bak/

备份完成

二、数据的恢复

我们启动新的容器,然后将刚才备份的文件拷贝到容器里,后面两个文件直接覆盖即可

docker cp /data/gitlab-bak/1709697433_2024_03_06_13.6.2_gitlab_backup.tar  gitlab:/var/opt/gitlab/backups/
docker cp /data/gitlab-bak/gitlab-secrets.json   gitlab:/etc/gitlab/
docker cp /data/gitlab-bak/gitlab.rb   gitlab:/etc/gitlab/

拷贝完之后,我们进入容器,进入备份目录,执行如下命令

docker exec -it gitlab bash
gitlab-rake gitlab:backup:restore BACKUP=1709697433_2024_03_06_13.6.2

如果没有权限,则执行

chmod 777 文件名

恢复之后,我们重新加载配置,并重启gitlab

gitlab-ctl reconfigure 
gitlab-ctl restart 

标签:gitlab,恢复,备份,GitLab,data,docker,backup
From: https://www.cnblogs.com/amadeuslee/p/18569895

相关文章

  • 极狐GitLab 正式发布最新版本 17.6
    沿袭我们的月度发布传统,极狐GitLab发布了17.6版本,该版本带来了增强的合并请求审核者指派、在部署详情页面显示版本注释、在部署详情页面显示版本注释等几十个重点功能的改进。下面是部分重点功能的详细解读。关于极狐GitLab的安装升级,可以查看官方指导文档。17.6容器镜像......
  • 【MySQL】备份与恢复
    文章目录一、前置准备二、备份三、恢复一、前置准备先创建库createdatabasetest;使用test数据库usetest;创建表createtabletest(idint,namevarchar(20));插入数据insertintotestvalues(1,"张三");insertintotestvalues(2,"李四");in......
  • Drive SnapShot 1.50 是由 Tom Ehlert 开发的一款磁盘备份和恢复软件,最初发布的版本
    DriveSnapshot-DiskImageBackupforWindowsNT/2000/XP/2003/X64DriveSnapShot1.50DiskImageBackupforWindows2000/XP/Vista/2003/7/2008/2008R2/8/8.1/10/11/2012/2012R2/2016/2019/2022/PE/x64DriveSnapShot是由TomEhlert开发的一款磁盘备份和恢复软件,最......
  • 好用的工具备份3
    AI工具箱AI工具箱导航好用的Github开源文本格式转换工具推荐Github开源图像设计稿转代码项目Github开源Markdown编辑器Github开源AI编程助手Github开源编程学习项目免费3D模型库推荐Github开源PDF编辑项目AI老照片修复工具AI图像放大工具AI图像背景......
  • 【数据库应用】异地备份:pg_rman支持异地备份
    要让pg_rman支持异地备份,可以通过以下方式实现:方法1:使用NFS挂载远程存储1、在目标服务器上配置NFS服务:确保远程存储服务器上安装并启用了NFS服务。配置共享目录,例如/backup。在/etc/exports中添加导出配置,例如:/backup192.168.1.0/24(rw,sync,no_root_squash)......
  • 【数据库开发】银行重要交易系统信创分布式数据库备份系统实施策略如何设计?
    一、银行重要系统数据库备份要素分析1.1数据库备份恢复内容1.2数据库备份恢复策略二、信创分布式数据库备份系统建设难点2.1生态不成熟2.2备份/恢复能力不足2.3备份运维不灵活、人工依赖程度高三、信创分布式数据库备份系统实施策略3.1数......
  • 轻松将 iPad 备份到外部驱动器的 3 种快速方法
    为了确保您的iPad数据无忧安全,我们来谈谈如何将这些珍贵的信息备份到外部硬盘上。这不仅是一个明智的选择,而且也是一个简单的过程。无论是家庭照片、工作文档还是您最喜欢的音乐收藏,一旦您掌握了将iPad备份到外部硬盘的技巧,这些数据将像放在保险箱中一样安全。让我们一起来......
  • KingbaseES V8R6集群备份恢复案例之---远程外部备份故障案例
    案例说明:KingbaseESV8R6集群,通过‘cluster’模式执行远程异地的外部备份,在备份初始化时,故障显示,远程节点连接数据库失败,异常终止。原因是,数据库节点不支持本地数据库访问导致。适用版本:KingbaseESV8R6集群架构:一、问题现象如下所示,在执行sys_backup.shinit后,提示远程备......
  • MySQL误删表数据,如何快速恢复丢失的数据?
    第一步:登录数据库cd/www/server/mysql/binmysql-uroot-p第二步:查看binlog日志是否打开showvariableslike'log_%'; 查看下binlog日志列表binlog日志文件目录在/www/server/data目录下showmasterlogs; 下载生成sql文件/www/server/mysql/bin/mysq......
  • 【Linux定时自动备份脚本】
    流程清单创建备份用的用户back_up,只给需要被备份文件夹的读取权限,和备份存放目录的写权限创建备份脚本,创建清除备份的脚本使用back_up用户,赋予脚本权限,修改crontab定时任务创建备份用户分配权限创建用户sudoadduserback_uppasswdback_up分配只读文件和可读写文......