saving
This commit is contained in:
parent
5d1ab53ade
commit
848b328359
|
|
@ -0,0 +1,94 @@
|
||||||
|
# Satoru Quick Start
|
||||||
|
|
||||||
|
Satoru is a web app that pulls backups from Linux hosts over SSH, stores them in a local restic repo, and can sync to Backblaze B2.
|
||||||
|
|
||||||
|
## 1. Prerequisites
|
||||||
|
|
||||||
|
Install these tools on the Satoru host:
|
||||||
|
|
||||||
|
- `go` (1.25+)
|
||||||
|
- `restic`
|
||||||
|
- `rsync`
|
||||||
|
- `ssh`
|
||||||
|
- `b2` (optional, needed for B2 features)
|
||||||
|
|
||||||
|
## 2. Run Satoru
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd /Users/peterli/git/satoru
|
||||||
|
go run ./cmd/satoru
|
||||||
|
```
|
||||||
|
|
||||||
|
Open:
|
||||||
|
|
||||||
|
- [http://localhost:8080](http://localhost:8080)
|
||||||
|
|
||||||
|
On first boot, Satoru will:
|
||||||
|
|
||||||
|
- create `data/satoru.conf` if missing
|
||||||
|
- auto-generate `RESTIC_PASSWORD` in that config if no explicit password is set
|
||||||
|
|
||||||
|
## 3. Configure (optional but recommended)
|
||||||
|
|
||||||
|
Edit:
|
||||||
|
|
||||||
|
- `/Users/peterli/git/satoru/data/satoru.conf`
|
||||||
|
|
||||||
|
Useful keys:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
RESTIC_PASSWORD=your-local-restic-password
|
||||||
|
RESTIC_PASSWORD2=your-b2-restic-password
|
||||||
|
B2_APPLICATION_ID=your-b2-key-id
|
||||||
|
B2_APPLICATION_KEY=your-b2-application-key
|
||||||
|
B2_EXECUTABLE_PATH=/opt/homebrew/bin/b2
|
||||||
|
SATORU_RESTIC_B2_REPOSITORY=b2:your-bucket:satoru-repo
|
||||||
|
```
|
||||||
|
|
||||||
|
Then restart Satoru.
|
||||||
|
|
||||||
|
## 4. First Login
|
||||||
|
|
||||||
|
The first account you create is admin.
|
||||||
|
|
||||||
|
- Sign up with username + password
|
||||||
|
- Sign in
|
||||||
|
|
||||||
|
## 5. Add a Site
|
||||||
|
|
||||||
|
In the dashboard:
|
||||||
|
|
||||||
|
1. Add `SSH User`, `Server`, and `Port`
|
||||||
|
2. Add one or more directory/file paths
|
||||||
|
3. Add optional SQLite paths
|
||||||
|
4. Save
|
||||||
|
|
||||||
|
You can also add MySQL dump operations per site (host/user/db/password).
|
||||||
|
|
||||||
|
## 6. Run a Backup
|
||||||
|
|
||||||
|
On a site card, click:
|
||||||
|
|
||||||
|
- `Run backup`
|
||||||
|
|
||||||
|
Watch progress in:
|
||||||
|
|
||||||
|
- sidebar health
|
||||||
|
- active site logs
|
||||||
|
- per-target status
|
||||||
|
|
||||||
|
## 7. Sync to B2
|
||||||
|
|
||||||
|
After local backups exist:
|
||||||
|
|
||||||
|
- click `Sync to B2` on the site
|
||||||
|
|
||||||
|
If B2 repo is not initialized yet, use:
|
||||||
|
|
||||||
|
- `Initialize B2 Repo` button in runtime checks section
|
||||||
|
|
||||||
|
## Notes
|
||||||
|
|
||||||
|
- Site selection is remembered in the browser.
|
||||||
|
- Backups are tagged per site in one local restic repo.
|
||||||
|
- If a job gets stuck, use `Cancel` and re-run.
|
||||||
Loading…
Reference in New Issue