编程 BackupX:单二进制自托管备份平台,把文件与数据库备份收进一个控制台

2026-09-14 20:01:53

BackupX:单二进制自托管备份平台,把文件与数据库备份收进一个控制台

仓库:github.com/Awuqing/BackupX · 文档:awuqing.github.io/BackupX · 下载 / Docker Hub

自托管的服务器备份管理平台,以单个二进制文件交付,安装完成后通过 Web 控制台配置和查看所有备份任务。

控制台里能看到什么

  • Dashboard —— 30 天成功/失败趋势、存储分布、任务量、集群健康状态。
  • 备份任务 —— 调度计划、多目标策略、保留策略、标签、RPO 目标、周期性校验。
  • 存储目标 —— 连接健康状态、实时容量、收藏、冗余角色。
  • 备份记录 —— 成功/失败状态、校验和、目标位置、执行日志、保留锁。

功能要点

备份类型:文件/目录(多源),MySQL、PostgreSQL、SQLite,SAP HANA(全量 / 增量 / 差异 / 日志,支持并行通道与重试)。

SAP HANA Backint Agent:内置 Backint 协议实现,HANA 的原生接口可以把数据直接写到任意 BackupX 存储后端。

70+ 存储后端:阿里云 OSS、腾讯云 COS、七牛、S3、Google Drive、WebDAV、FTP + SFTP、Azure Blob、Dropbox、OneDrive,其余几十种通过 rclone 接入。

调度:Cron 表达式 + 可视化编辑器 + 自动保留策略(按天数/份数,以及清空目录)。

多节点集群:Master-Agent 仅出站轮询,支持代理、私有 CA、SSH 跳板;Agent 在本地执行任务,不需要反向连通。

安全:JWT + bcrypt + AES-256-GCM 加密配置,可选备份加密,完整审计日志。

通知:成功或失败时通过邮件 / Webhook / Telegram 发出。

可观测性:Prometheus /metrics 端点 + /health + /ready 探针 + SLA 违约 gauge。

审计 Webhook:HMAC-SHA256 签名后转发到 SIEM / WORM 存储,满足 SOC2 / GDPR 合规需要。

流控:按节点设置带宽上限与并发上限,大节点和小节点可以分别调。

部署形态:单二进制 + 内嵌 SQLite,不需要外部控制面数据库;执行主机上需安装对应的数据库备份工具。

快速开始

Docker Compose(推荐):

git clone --depth 1 https://github.com/Awuqing/BackupX.git
cd BackupX
docker compose up -d

预编译包:

curl -LO https://github.com/Awuqing/BackupX/releases/latest/download/backupx-linux-amd64.tar.gz
curl -LO https://github.com/Awuqing/BackupX/releases/latest/download/backupx-linux-amd64.tar.gz.sha256
sha256sum -c backupx-linux-amd64.tar.gz.sha256
tar xzf backupx-linux-amd64.tar.gz
cd backupx-*-linux-amd64
sudo ./install.sh

源码构建并在裸机安装:

git clone https://github.com/Awuqing/BackupX.git
cd BackupX
make build
sudo ./deploy/install.sh

ARM64 主机请使用 backupx-linux-arm64.tar.gz。压缩包内含 backupxweb/config.example.yamlinstall.sh,需要进入解压后的目录执行 install.sh

Compose 快速开始默认使用 latest,仅用于评估。生产前把 BACKUPX_IMAGE 固定到某个 release tag 或 digest,并先看一遍安全加固与恢复相关文档。

装好后打开 http://your-server:8340,在初始化页面选择中文或英文,创建第一个管理员账号,然后按 5 分钟 Quick Start 走一遍。

文档

完整文档在 awuqing.github.io/BackupX,分为入门、部署、运维、SAP HANA、多节点集群、API 参考几部分。常用页面:

开发

git clone https://github.com/Awuqing/BackupX.git && cd BackupX
make dev-server  # Terminal 1 — backend (:8340)
make dev-web     # Terminal 2 — frontend (Vite HMR)
make test        # run all tests
make build       # produce server/bin/backupx + web/dist

后端为 Go,前端开发走 Vite HMR。

许可与项目信息

License: Apache License 2.0。

BackupX 是面向 Linux/macOS 服务器的自托管备份管理平台:通过 Web 控制台配置文件与数据库备份,写入 S3 兼容存储、Google Drive、WebDAV、FTP 或本地磁盘。当前 Stars 102,Forks 17,131 commits。

适合希望把备份控制面留在自己手里、又不想额外维护一套控制面数据库的环境;如果被备份的主机上没有装对应的数据库备份工具,数据库类任务无法执行,另外多节点模式要求 Agent 能出站访问 Master,反向连通并非必需但也意味着 Agent 侧需自行保证出站链路可用。

复制全文 生成海报 运维 备份 自托管 Go Docker

推荐文章

程序员茄子在线接单