Skip to content

Commit 54a008b

Browse files
committed
✨ hub: Add backrest
1 parent 4da1813 commit 54a008b

4 files changed

Lines changed: 81 additions & 0 deletions

File tree

hub/backrest/.env

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
PROJECT=backrest
2+
DOMAIN=stack.localhost
3+
4+
# the port to bind to. Defaults to 9898.
5+
# BACKREST_PORT=
6+
7+
# the path to the config file. Defaults to $HOME/.config/resticui/config.json or if $XDG_CONFIG_HOME is set, $XDG_CONFIG_HOME/resticui/config.json.
8+
BACKREST_CONFIG=/config/config.json
9+
10+
# the path to the data directory. Defaults to $HOME/.local/share/resticui or if $XDG_DATA_HOME is set, $XDG_DATA_HOME/resticui.
11+
BACKREST_DATA=/data
12+
13+
# the path to the restic binary. Defaults managed version of restic which will be downloaded and installed in the data directory.
14+
# BACKREST_RESTIC_COMMAND=
15+
16+
# the path to the cache directory. This is propagated to restic.
17+
XDG_CACHE_HOME=/cache
18+
19+
TMPDIR=/tmp
20+
21+
TZ=UTC

hub/backrest/compose.yaml

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
services:
2+
backrest:
3+
image: garethgeorge/backrest:v${BACKREST_VERSION:-1.8.1}-scratch
4+
restart: on-failure:2
5+
volumes:
6+
- data:/data
7+
- config:/config
8+
- cache:/cache
9+
- /tmp:/tmp
10+
# - /path/to/backup/data:/userdata # Mount local paths to backup
11+
# - /path/to/local/repos:/repos # Mount local repos (optional for remote storage)
12+
env_file: .env
13+
labels:
14+
dash.url: https://$PROJECT.$DOMAIN
15+
traefik.http.routers.backrest.rule: Host(`$PROJECT.$DOMAIN`)
16+
traefik.http.services.backrest.loadbalancer.server.port: 9898
17+
18+
volumes:
19+
data:
20+
config:
21+
cache:

hub/backrest/stack.yaml

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# SPDX-License-Identifier: MIT
2+
# yaml-language-server: $schema=https://stack.lol/schemas/stack.config.schema.yaml
3+
# This is a https://stack.lol stack metadata file.
4+
slug: backrest
5+
name: Backrest
6+
icon:
7+
flavor: DockerCompose
8+
version: "1.8.1"
9+
updated_at: 2025-05-06
10+
description: Web UI and orchestrator for restic backup
11+
author: Gareth George
12+
license: GPL-3.0
13+
repository: https://github.com/garethgeorge/backrest
14+
stars: 3000
15+
tags: [backup]
16+
alternativeTo: []
17+
readme: |
18+
19+
Backrest is a web-accessible backup solution built on top of restic. Backrest provides a WebUI which wraps the restic CLI and makes it easy to create repos, browse snapshots, and restore files. Additionally, Backrest can run in the background and take an opinionated approach to scheduling snapshots and orchestrating repo health operations.
20+
21+
![preview](https://f000.backblazeb2.com/file/gshare/screenshots/2024/Screenshot+from+2024-01-04+18-30-14.png)
22+
23+
<hr>
24+
25+
### Features
26+
27+
- **Web Interface**: Access locally or remotely (perfect for NAS deployments)
28+
- **Multi-Platform Support**
29+
- **Backup Management**:
30+
- Import existing restic repositories
31+
- Cron-scheduled backups and maintenance (e.g. prune, check, forget, etc)
32+
- Browse and restore files from snapshots
33+
- Configurable notifications (Discord, Slack, Shoutrrr, Gotify, Healthchecks)
34+
- Pre/post backup command hooks to execute shell scripts
35+
- **Storage Options**:
36+
- Compatible with rclone remotes
37+
- Supports all restic storage backends (S3, B2, Azure, GCS, local, SFTP, and [all rclone remotes](https://rclone.org/))

packages/website/src/content/data/tags.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -273,3 +273,5 @@ tags:
273273
name: Messaging
274274
- slug: ebook
275275
name: eBook
276+
- slug: backup
277+
name: Backup

0 commit comments

Comments
 (0)