readme update

This commit is contained in:
John Lancaster
2024-05-27 18:33:53 -05:00
parent e82f6155ad
commit 33260592f5

View File

@@ -1,24 +1,39 @@
# Restic Scripts # Restic Scripts
Purpose:
- Wrap `restic` with the ability to start/stop Docker containers
- Send updates to Loki server
## Environment Variables ## Environment Variables
Recommended to put these in the relevant `~/.bashrc` file Recommended to put these in the relevant `~/.bashrc` file
| Env Variable | Description | | Env Variable | Description |
|---------------------|--------------------------------------------------------------------------------------------| | ------------------- | ------------------------------------------------------------------------------------------ |
| `HOSTNAME` | Network hostname of where the backup is running |
| `BACKUP_DIR` | Directory to back up | | `BACKUP_DIR` | Directory to back up |
| `RESTIC_REPOSITORY` | Directory for the restic repository. This is usually on a mount point made from Proxmox | | `RESTIC_REPOSITORY` | Directory for the restic repository. This is usually on a mount point made from Proxmox |
| `RESTIC_PASSWORD` | Password for the restic repository | | `RESTIC_PASSWORD` | Password for the restic repository |
| `LOKI_URL` | Push URL for Loki. Should include the port and end with something like `/loki/api/v1/push` | | `LOKI_URL` | Push URL for Loki. Should include the port and end with something like `/loki/api/v1/push` |
## Usage ## Loki Updates
### Python Updates sent to Loki will have the following labels:
| Label | Description |
| -------- | ---------------------------------------------------------------------------------- |
| `host` | Hostname set by the environment variable `HOSTNAME` |
| `backup` | String representing the type of update e.g. `backup`, `prune`, `forget`, or `size` |
## Usage
```shell ```shell
python -m restic.snapshots python -m restic.snapshots
``` ```
To stop docker containers before the backup and start them again afterwards, use the `--project` and `--services` flags.
```shell ```shell
python -m restic.backup --tag manual --project joplin --services app,db python -m restic.backup --tag manual --project joplin --services app,db
``` ```
@@ -26,21 +41,3 @@ python -m restic.backup --tag manual --project joplin --services app,db
```shell ```shell
python -m restic.prune python -m restic.prune
``` ```
### Shell Scripts
```shell
./restic_command.sh snapshots
```
```shell
./restic_backup.sh --tag manual
```
```shell
./restic_command.sh forget --keep-last 1
```
```shell
./restic_command.sh restore
```