logo NodeSeekbeta

Backup Center —— 开源多网站备份管理系统(Docker 一键部署)

上次分享的多网站备份系统现在给大家开源了。
在线演示 & 开源地址
在线演示(纯前端 + 模拟数据,任意账号密码都能登录)​:gongpz.github.io/backup-center/
开源仓库:github.com/gongpz/backup-center
希望多多点点小星星
image
使用需求:
手里服务器和网站一多,备份就变得很乱——有的靠手动 tar,有的靠厂商快照,出事时常常找不到恢复点。于是写了这么一个统一面板:把服务器、网站、数据库、存储、备份任务、日志都收拢到一个后台,每台机器上跑一个轻量 Agent 自动备份、自动上传到各种存储。

一、核心功能
服务器管理:在面板里登记服务器,安装 Agent(Go 编写,单文件)后自动心跳、上报状态。
网站 + 数据库一起备份:Agent 会把网站文件打包成 tar,同时把数据库导出为 .sql,两者同一天归档到 YYYYMMDD 目录;恢复时文件和数据库对得上,不用分开找。
存储管理:集中配置多个 rclone 存储,可标记「强制备份」存储;支持连接测试。借助 rclone 能接市面上几乎所有后端:阿里云 OSS、腾讯云 COS、S3、Backblaze B2、七牛、又拍、Nextcloud、Google Drive 等。
备份记录:每次备份都有日志,成功/失败、文件大小、耗时一目了然。
资源库:用于存放 Agent 二进制分发文件和上传的静态资源(对接对象存储)。
通知:备份成功/失败、Agent 离线等事件可推送通知(已接 Server 酱 / 微信)。
系统自我保护:一键把 Backup Center 自身(数据库 + 配置)备份到「强制备份」存储,迁移/重装不丢配置。
后台可定制:系统名称、浅色/深色/跟随系统主题、页脚版权/免责声明/备案号/联系方式都能在后台改。

二、技术架构
添加到对话
层 技术
前端 Vue 3 + Vite + Pinia + Element Plus
后端 Laravel(PHP)+ Sanctum 鉴权
Agent Go(单文件,部署在每台被备份机器上)
部署 Docker(Nginx + PHP + MySQL),docker-compose 编排
架构是「一个中心面板 + N 台机器上的 Agent」:Agent 通过 Token 与面板通信,不暴露数据库,外网也不需要直接访问被备份机器的管理口。

三、部署方式
最省事的是一键安装脚本(已处理公网 IP 探测、端口占用自动释放、Docker daemon 自检等坑),本质就是拉起 bc-web + bc-app + MySQL 三个容器。也支持宝塔面板环境(Nginx + PHP + MySQL,纯 PHP,不需要 Node.js)。首次访问引导创建管理员账号。

  • 好活

  • 恢复也能在面板里操作吗

  • @hjdsh #2 不能,这个其实就是一个同步备份文件到其他空间显示异地保存。但是实现起来不困难,后期可以试着支持一下。

  • 好东西,支持

  • 支持

  • 增加对docker的备份。

你好啊,陌生人!

我的朋友,看起来你是新来的,如果想参与到讨论中,点击下面的按钮!

📈用户数目📈

目前论坛共有73038位seeker

🎉欢迎新用户🎉