Backups are .tar.gz archives of a consistent database snapshot (VACUUM INTO) plus the images folder. They run on a cron schedule, daily at 3:00 by default, and the newest N scheduled ones are kept (7 by default). Manual backups are never pruned. Settings → Backups offers schedule presets or a custom cron expression, retention, "Back up now", and download/delete for each backup. A small built-in parser handles standard 5-field cron syntax with names, ranges, steps and @daily-style shorthands. Backups go to CANON_BACKUP_DIR (default data/backups). Compose mounts a separate canon-backups volume at /backups, overridable with CANON_BACKUP_PATH. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
26 lines
943 B
HTML
26 lines
943 B
HTML
{{define "bodyclass"}}page-admin{{end}}
|
|
{{define "content"}}
|
|
<div class="container admin">
|
|
<header class="admin-head">
|
|
<div>
|
|
<h1>Settings</h1>
|
|
<p class="muted">Changes apply to your public page right away.</p>
|
|
</div>
|
|
</header>
|
|
<div class="settings">
|
|
<nav class="settings-nav" aria-label="Settings sections">
|
|
<a href="#profile">{{icon "user"}}Profile</a>
|
|
<a href="#appearance">{{icon "palette"}}Appearance</a>
|
|
<a href="#integrations">{{icon "plug"}}Integrations</a>
|
|
<a href="#backups">{{icon "archive"}}Backups</a>
|
|
<a href="#account">{{icon "lock"}}Account</a>
|
|
</nav>
|
|
<div class="settings-body" id="settings" aria-busy="true">
|
|
<p class="muted">Loading…</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<script type="application/json" id="boot">{{.Data.Boot}}</script>
|
|
{{end}}
|
|
{{define "scripts"}}<script type="module" src="/static/js/admin-settings.js?v={{.AssetVer}}"></script>{{end}}
|