备份方案结合了 Backrest 和 Rclone,适用于希望备份 服务器与数据库 和其他文件(例如文档、照片等)的用户。 Rclone 是一个强大的工具,可以用来同步本地文件与云存储服务(如 Google Drive、OneDrive、Dropbox 等)保证了数据安全,还能确保数据在云端得到加密存储
开源GitHub项目地址
先创建一个存储桶R2 s3对象存储都可以只要记住下面用cloudflare演示
打开cloudflare创建一个存储桶

添加一个访问API


把下面三个地址记录起来

把ID KEY 地址
粘贴到下面对应位置保存下备用
[r2] type = s3 provider = Cloudflare access_key_id =ID secret_access_key =Key endpoint =地址
开通一台服务器或者使用现有的,推荐先在vultr尝试搭建
使用SSH连接服务器
安装Rclone
sudo -v ; curl https://rclone.org/install.sh | sudo bash
获取配置文件路径
rclone config file
修改配置文件
sudo nano /root/.config/rclone/rclone.conf
把保存备用的配置添加进去
别忘了把ID KEY 地址填入
例如

ctrl+x y 保存
要安装docker如果没安装
先安装
curl -fsSL https://get.docker.com | sh
重要提醒的是看你想备份那个位置更改:
位置我需要备份的是home我是这样写的
-v /home:/userdata/home \
要改其他目录这样改
-v /root:/userdata/root \
只能有一个目录
docker run -d \ --name backrest \ --hostname backrest \ -p 9898:9898 \ -v /root/backrest/data:/data \ -v /root/backrest/config:/config \ -v /root/backrest/cache:/cache \ -v /root/backrest/tmp:/tmp \ -v /root/.config/rclone:/root/.config/rclone \ -v /home:/userdata/home \ -e BACKREST_DATA=/data \ -e BACKREST_CONFIG=/config/config.json \ -e XDG_CACHE_HOME=/cache \ -e TMPDIR=/tmp \ -e TZ=Asia/Hongkong \ --restart unless-stopped \ garethgeorge/backrest:latest
ip+端口打开配置地址建议使用nginx或者caddy配置一下https确保访问安全
如果有防火墙先关闭
sudo ufw disable
添加一个用户

配置备份
刚才保存配置第一行的名称可选目录例如
rclone:r2:beifen/备份
这里的密码要牢记,备份恢复需要填写相同的路径以及密码

添加备份计划

然后开始备份

配置通知
在配置存储和计划时,都支持配置通知,当前版本支持的通知有:

以Telegram为例,正确填入Bot Token和Chat ID即可:
备份恢复到本机
添加第一次备份同样路径以及密码例如
rclone:r2:beifen/备份
这里的密码就是备份时牢记的密码

恢复时需要修改你的恢复路径

如果过你的备份不在root目录修改下docker安装的映射路径-v /home:/userdata/home \
根据实际情况更改
只能存在一个映射路径-v /home:/userdata/home \
同时选择备份目录也需要更改/userdata/home

自动化:结合 Backrest 和 Rclone,可以实现完全自动化的备份与恢复过程,极大地降低了管理负担。
高效性:Backrest 提供高效的数据库备份与恢复,而 Rclone 支持多种云存储服务,方便用户选择最合适的存储。
灵活性:你可以选择全量、增量备份,云存储选择灵活,支持加密和压缩。