02 / 13
快速开始
拉取镜像、初始化实例、注册数据库并完成首次加密备份
1. 启动
推荐直接使用 GHCR 发布镜像(linux/amd64 + linux/arm64;也可在
安装部署选择 Release 独立二进制或本地构建):
# 全新安装示例——从改名前的 supabackup 部署升级必须保留原来的
# supabackup-data 卷:见「安装」页的升级说明。
docker run -d --name supacove \
-p 127.0.0.1:8080:8080 \
-v supacove-data:/app/data \
ghcr.io/web-casa/supacove:latest镜像以非 root(UID 10001)运行,内置 PostgreSQL 客户端 14–18(二进制部署
需本机 pg_dump);加密使用内置 age 算法库(无需外部 age CLI)。
数据卷保存主密钥、SQLite 元数据库与暂存密文——它是除对象存储外最重要的资产。
2. 初始化管理员
实例是全新的:第一个管理员账号必须由本地一次性令牌创建。
docker exec supacove /app/supacove bootstrap输出形如:
One-time bootstrap token (valid 15m0s):
jkwioY…
Use it in the web UI to create the admin account. It will not be shown again.打开 http://127.0.0.1:8080(本地纯 HTTP 回环可以直接登录;生产必须 TLS,否则
浏览器不保存 Secure cookie)。点“使用 CLI 令牌初始化新实例”,粘贴令牌并设置
用户名与至少 12 位密码。令牌 15 分钟内有效、仅可用一次。
3. 初始化 age 加密身份
docker exec supacove /app/supacove age init > identity.txt私钥只出现这一次
identity.txt 是解密所有备份的唯一私钥。请离线加密保存;实例内只保存公钥
(recipient),不保存私钥。丢失私钥 = 备份不可恢复。
4. 注册数据库并备份
在控制台“注册第一个数据库”中选择平台或“自托管/其他”,粘贴或分字段填写连接串。 保存前会先做一次真实连接测试;连接串加密存储,之后不再显示。
回到总览,点该库的“立即备份”。任务在“近期任务”里显示状态;成功后可下载 恢复套件(restore.sh)与密文工件。
5. 验证恢复(强烈建议做一次)
AGE_IDENTITY_FILE=$PWD/identity.txt \
PGPASSWORD='<目标库密码>' \
sh restore.sh 'postgresql://user@host:5432/restored?sslmode=require' backup-job2.dump.age套件会先校验密文 SHA-256,再解密、pg_restore 到新库,并输出恢复的表数。
用的是 Supabase?备份 Supabase 数据库说明了该用哪个连接串,以及备份里包含什么。
最后更新