关于linux:如何定期备份gitea并上传至OSS

2次阅读

共计 653 个字符,预计需要花费 2 分钟才能阅读完成。

gitea 比拟轻量,容易保护,占用服务器资源少(最根底的 ECS 甚至树莓派即可运行),自带备份命令行工具。此处,只是利用现有工具做的定期备份 shell。

以下基于 centos7(阿里云),仅供参考

1. 装置配置 gitea,参考官网,下载二进制文件,配置 /etc/gitea/app.ini 即可

https://docs.gitea.io/

2. 配置 gitea 主动启动服务

配置 gitea.service(官网提供示例代码,这儿不再赘述) 至,并执行sudo systemctl enable gitea

3. 配置阿里云 OSS 上传
下载备份工具 ossutil64

执行 ./ossutil64 config 生成 OSS 配置

4. 编辑备份脚本,并设置为每周运行一次

执行crontab -e,而后追加如下内容0 2 * * 0 /bin/sh /data/backup/backup.sh

运行 crontab -l 查看后果:

附残缺备份 shell:

  • 应用 gitea dump 命令备份。
  • 只保留最近两次的文件。
  • 上传
#!/bin/sh
cd /data/backup
su git -c '/usr/local/bin/gitea dump --config /etc/gitea/app.ini'
find /data/backup/ -mtime +6 -name "gitea-dump*.zip" | xargs rm -f  >> backup.log  2>&1
/data/tool/ossutil64 cp -r /data/backup/ oss://xxx-backup/gitea --loglevel info -u
正文完
 0