您现在的位置是:首页 > 正文

备份gitlab代码仓库脚本

2024-01-30 21:13:01阅读 0

1.脚本能做什么

       将gitlab代码仓库备份并将备份迁移到指定服务器,此时我将代码仓库上传到了minio的某个bucket下,便于查看情况,本次脚本并没有做定时执行的脚本,所以脚本需要手动执行。

      文中涉及的配置服务器之间免密,以及授予脚本可执行权限这些一概不讲,太基础不会的自己百度。

2.脚本内容

      我的gitlab在docker容器里面,而映射的数据路径是/home/gitlab/data下,如果你的gitlab是原生方式安装,请以实际路径为准,一般在/var/opt/gitlab/backups下,备份思路是一样的。

     代码服务器与minio服务器做了免密登录,其实只要执行完脚本备份就可以了。没有minio手动拷贝到硬盘也是不错的选择。

#! /bin/bash
echo "开始删除映射backup目录下的文件"
cd /home/gitlab/data/backups/ && rm -rf ./*.tar
echo "delete done,开始执行备份"
docker exec gitlab gitlab-rake gitlab:backup:create
echo "生成的备份文件在------>>>>>>>>>/home/gitlab/data/backups"
cd /home/gitlab/data/backups
scp *.tar root@192.168.xx.xx:/home/minio/data/gitlab/

3.查看脚本执行情况

[root@localhost ~]# sh backup_gitlab.sh 
开始删除映射backup目录下的文件
delete done,开始执行备份
2023-03-14 07:21:49 +0000 -- Dumping database ... 
Dumping PostgreSQL database gitlabhq_production ... [DONE]
2023-03-14 07:21:50 +0000 -- done
2023-03-14 07:21:50 +0000 -- Dumping repositories ...
 * gitlab-instance-56925b38/Monitoring (@hashed/6b/86/6b86b273ff34fce19d6b804eff5a3f5747ada4eaa22f1d49c01e52ddb7875b4b) ... 

2023-03-14 07:21:56 +0000 -- done
2023-03-14 07:21:56 +0000 -- Dumping uploads ... 
2023-03-14 07:21:57 +0000 -- done
2023-03-14 07:21:57 +0000 -- Dumping builds ... 
2023-03-14 07:21:57 +0000 -- done
2023-03-14 07:21:57 +0000 -- Dumping artifacts ... 
2023-03-14 07:21:57 +0000 -- done
2023-03-14 07:21:57 +0000 -- Dumping pages ... 
2023-03-14 07:21:57 +0000 -- done
2023-03-14 07:21:57 +0000 -- Dumping lfs objects ... 
2023-03-14 07:21:57 +0000 -- done
2023-03-14 07:21:57 +0000 -- Dumping container registry images ... 
2023-03-14 07:21:57 +0000 -- [DISABLED]
Creating backup archive: 1678778517_2023_03_14_13.12.3_gitlab_backup.tar ... done
Uploading backup archive to remote storage  ... skipped
Deleting tmp directories ... done
done
done
done
done
done
done
done
Deleting old backups ... skipping
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.
Backup task is done.
生成的备份文件在------>>>>>>>>>/home/gitlab/data/backups
1678778517_2023_03_14_13.12.3_gitlab_backup.tar 

 minio看下,扔过去了

网站文章

  • Qt 多线程开启定时任务

    Qt 多线程开启定时任务

    多线程执行一些耗时操作,并且需要固定时间去轮询。

    2024-01-30 21:12:54
  • https://blog.csdn.net/qq_38410730/article/details/90116695

    摘自:https://blog.csdn.net/qq_38410730/article/details/90116695 https://blog.csdn.net/weixin_33700350/...

    2024-01-30 21:12:47
  • Vue中用计算属性来实现过滤(比watch来实现好一点)

    Vue中用计算属性来实现过滤(比watch来实现好一点)

    Vue中用计算属性来实现过滤(比watch来实现好一点

    2024-01-30 21:12:18
  • [大、小根堆应用总结一]堆排序的应用场景

    前言 在整理算法题的时候发现,大根堆(小根堆)这种数据结构在各类算法中应用比较广泛,典型的堆排序,以及利用大小根堆这种数据结构来找出一个解决问题的算法最优解。因此,我打算单独将关于堆的应用独立总结出来,后面每遇到一种跟堆结构相关的应用都放到这个目录下。堆的定义 n个关键字序列L[1…n]称为堆,当且仅当该序列满足: 1. L(i)<=L(2i)且L(i)<=L(2i+1)或

    2024-01-30 21:12:10
  • Luogu-P1941 飞扬的小鸟

    Luogu-P1941 飞扬的小鸟

    题目题目链接测试得分:  100主要算法:  DP(零一背包,完全背包)题干:   背包组合问题应试策略:每一个点都是由前面的状态转移的,并且对后面的状态没有影响,满足最优化原理与无后效性原则,选择算法DP对于图上的每一个点都是由前一列降下来或者是前面升上来的,对于降下来的情况是...

    2024-01-30 21:12:02
  • Windows内核和Linux内核比较

    Windows内核和Linux内核比较

    Windows内核和Linux内核比较

    2024-01-30 21:11:25
  • 关于C语言自定义函数浅谈

    关于C语言自定义函数浅谈

    如果函数不接收用户传递的数据,那么定义时可以不带参数。如下所示:123//bodydataType 是返回值类型,它可以是C语言中的任意数据类型,例如 int、float、char 等。functio...

    2024-01-30 21:11:18
  • [MySQL]聚合函数与分组

    [MySQL]聚合函数与分组

    1. 聚合函数介绍 1.1 什么是聚合函数 1.2 常用的聚合函数 2. 常用的聚合函数 2.1 AVG() 2.2 SUM() 2.3 MAX() 2.4 MIN() 2.5 COUNT() 2.6 补充 3. GROUP BY 3.1 分组的基本使用 3.2 使用多个列分组 3.3 结论 3.4 WITH ROLLUP 4. HAVING

    2024-01-30 21:10:43
  • 二分图相关

    二分图相关一、染色法判定二分图二分图要求边的两端点处于不同的集合,那么将两端点分别染成不同的颜色,如果没有冲突,则说明是二分图。首先是dfs函数,深搜进行染色:bool dfs(int u,int c...

    2024-01-30 21:10:36
  • 在ML中缺乏数据可是个大问题,亲测有效的5种方法帮您解决

    在ML中缺乏数据可是个大问题,亲测有效的5种方法帮您解决

    https://www.toutiao.com/a6701193162699833859/ 在我做过的很多项目中,公司虽然有非常棒的AI商业创意,但当他们意识到自己没有足够的数据时,却会慢慢的变得沮丧起来。然而,确实有解决的方案。本文的目的是简要地向你介绍其中的一些在我的实践中已经证明有效的方法,而不是列出所有现有的解决方案。 数据稀缺问题非常重要,因为数据是任何人工智能项目的...

    2024-01-30 21:10:30