Skip to content

Commit 657b7cc

Browse files
committed
doc: Add example run
1 parent 7e3b5cc commit 657b7cc

File tree

2 files changed

+50
-2
lines changed

2 files changed

+50
-2
lines changed

README.md

Lines changed: 49 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,53 @@ The result is a simple, fully configurable Docker image.
88
Usage is documented in-script, to display the help menu use
99

1010
```
11-
docker run -it --rm ghcr.io/dataforgoodfr/d4g-s3-backup:latest --help
11+
$ docker run -it --rm ghcr.io/dataforgoodfr/d4g-s3-backup:latest --help
12+
USAGE docker run -it --rm -v /var/data:/data -v /opt/backups:/backups ghcr.io/dataforgoodfr/d4g-s3-backup \
13+
[--access-key="<access_key>"] \
14+
[--secret-key="<secret_key>"] \
15+
[--bucket-name="backups"] \
16+
[--host-base="%(bucket)s.s3.fr-par.scw.cloud"] \
17+
[--data-dir="/data"] \
18+
[--backups-dir="/backups"] \
19+
[--service-name="service"] \
20+
[--retention-days=30] \
21+
[--bucket-region="fr-par"] \
22+
[--prom-metrics] \
23+
[--debug] \
24+
[--help]
25+
26+
Create backups for a specific dir easily and sync them to an s3 compatible bucket.
27+
This script also supports publishing prometheu-compatible metrics through the Textfile Collector.
28+
29+
Data from <data_dir> will be backed up to <backups-dir>/<service-name>/<service-name>-2023-12-20.tar.gz
30+
Files will be keps around for <retention-days> days.
31+
Files will be synced to s3 under s3://<bucket-name>/<service-name> using supplied credentials and configuration.
32+
33+
Supported parameters :
34+
-h, --help : display this message
35+
--debug : Print configuration before running (Optional)
36+
--access-key : AWS access key (Required)
37+
--secret-key : AWS secret key (Required)
38+
--bucket-name : name of the bucket to sync backups to (Optional, Default backups)
39+
--data-dir : directory to backup (Optional, Default ./data)
40+
--service-name : name of the service to backup (Optional, Default service)
41+
--backups-dir : backups root directory where will be stored (Optional, Default /opt/backups/)
42+
--host-bucket : Bucket host base (Optional, Default ${BUCKET_NAME}s.s3.fr-par.scw.cloud)
43+
--host-base : S3 host base (Optional, Default %(bucket)s.s3.fr-par.scw.cloud)
44+
--bucket-region : S3 bucket region (Optional, Default fr-par)
45+
--retention-days : number of days to keep backups (Default 30)
46+
--prom-metrics : enable prometheus metrics (Default false)
47+
```
48+
49+
### Example
50+
This one will create a backup for our private vaultwarden instance.
51+
52+
```
53+
docker run -it --rm -v /opt/d4g-vaultwarden/data:/data \
54+
-v /opt/backups:/backups \
55+
ghcr.io/dataforgoodfr/d4g-s3-backup:latest \
56+
--access-key=<access-key> \
57+
--bucket-name=poletech-backups-s3 \
58+
--service-name=vaultwarden \
59+
--secret-key=<secret-key>
1260
```

entrypoint.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ cleanup() {
4949
if [ "$PROM_METRICS" == "true" ]; then
5050
write_metrics
5151
fi
52-
if [ "$FAILURE" != 0]; then
52+
if [ "$FAILURE" != 0 ]; then
5353
error "Backup for $SERVICE_NAME $(date +%Y-%m-%d) failed."
5454
fi
5555
exit 0

0 commit comments

Comments
 (0)