设计预览稿 · Restorix · 仅用于方案确认
RESTORIX
开发者工具 · macOS

检查 Mac 上 Docker 卷是否有备份并可恢复。扫描现有 Docker 和 restic 状态,生成健康报告,打印安全的恢复命令。

Volume Health 3 Protected
db_data Protected
redis_cache Unprotected
app_uploads Stale
legacy_data Unknown
5 volumes scanned 1 needs attention
Docker 扫描 Restic 快照 健康报告 备份检查 Docker 扫描 Restic 快照 健康报告 备份检查
Rust CLI SwiftUI 菜单栏 Markdown 导出 Volume Mountpoints Rust CLI SwiftUI 菜单栏 Markdown 导出 Volume Mountpoints
Health Status

五种状态,一眼看清备份健康

Restorix 把每个 Docker 卷归类为五种健康状态之一,告诉你哪些卷可以恢复、哪些需要立即处理。

Protected
卷有最近的 restic 快照,可恢复。
可恢复
Unprotected
卷没有任何快照,无备份。
需立即处理
Stale
快照过旧,可能需要更新。
建议更新
?
Unknown
无法判断快照状态,需排查。
待排查
!
Error
扫描或读取出错,查看日志。
出错
Feature Matrix

从扫描到报告,一条命令完成

六个核心能力覆盖 Docker 卷备份健康的完整链路。

🐳
01 / SCAN
Docker 扫描
扫描本机 Docker 容器和卷,枚举所有 volume mountpoints,识别需要备份检查的目标。
docker · containers · volumes
📦
02 / READ
Restic 快照读取
读取 restic snapshots,解析快照路径与时间戳。
restic · snapshots
🔗
03 / MATCH
卷健康匹配
把 Docker volume mountpoints 匹配到 snapshot paths。
mountpoints · paths
📊
04 / REPORT
健康状态报告
报告 Protected / Unprotected / Stale / Unknown / Error。
5 states · health
📝
05 / EXPORT
Markdown 报告导出
把健康报告导出为 Markdown 文件,方便归档、分享、提交到仓库,或粘贴到团队文档中跟踪备份状态。
markdown · export · archive
🖥
06 / APP
SwiftUI 菜单栏
macOS 菜单栏应用,通过 Process 调用 CLI。
swiftui · menubar · process
Command Line

Rust CLI,从终端开始

restorix-core 与 restorix-cli 组成的 Rust workspace,提供扫描、仓库管理、报告导出的完整命令行能力,菜单栏应用只是它的 GUI 外壳。

  • 1构建 Rust workspace,产出 restorix-cli 二进制
  • 2扫描 Docker 卷并以 JSON 输出结构化结果
  • 3添加 restic 仓库,通过环境变量读取密码
  • 4导出 Markdown 健康报告
restorix — zsh
# 构建项目 $ cargo build Compiling restorix-core v0.1.0 Compiling restorix-cli v0.1.0 Finished dev [unoptimized] target(s) # 扫描 Docker 卷,输出 JSON $ cargo run -p restorix-cli -- scan --json { "volumes": [ { "name": "db_data", "status": "Protected" } ] } # 添加 restic 仓库 $ cargo run -p restorix-cli -- repo add \ --tool restic --name "Local Restic" \ --location "/path/to/repo" \ --password-env-key RESTIC_PASSWORD # 导出 Markdown 报告 $ cargo run -p restorix-cli -- report markdown ✓ Report written to restorix-report.md
Ready to Use

Docker 卷备份健康,
一眼看清。

扫描 Docker 卷,匹配 restic 快照,五种健康状态分类,生成可执行的恢复命令。完整能力在 Restorix 中体验。

0
健康状态分类
0
核心功能模块
0
MVP 路线步骤
100%
Rust + SwiftUI
MVP Roadmap

从 CLI 到菜单栏应用,八步走完 MVP

状态:Planned — MVP 开发中。

1

Rust workspace 和 CLI 核心Done

搭建 restorix-core + restorix-cli workspace,定义命令结构与基础 IO。

2

Docker 扫描器In Progress

实现 Docker 容器与卷的扫描,枚举 volume mountpoints。

3

Restic 扫描器Planned

读取 restic snapshots,解析快照路径与时间戳。

4

卷健康匹配器Planned

匹配 Docker volume mountpoints 到 snapshot paths。

5

Markdown 报告导出Planned

把健康报告导出为 Markdown 文件。

6

macOS SwiftUI 菜单栏应用Planned

菜单栏应用,通过 Process 调用 CLI。

7

Dashboard、volumes、repositories、reports、settings 视图Planned

构建 SwiftUI 各视图,呈现扫描结果与仓库管理。

8

CLI 打包到 Restorix.appPlanned

把 CLI 二进制打包进应用 bundle,完成分发准备。

Tech Stack

对的工具做对的事

Rust
CLI · core logic
SwiftUI
macOS 菜单栏应用
Docker
容器与卷扫描
Restic
快照读取与匹配
Get Started

开始使用 Restorix