aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorQuentin Dufour <quentin@deuxfleurs.fr>2021-11-17 12:16:49 +0100
committerQuentin Dufour <quentin@deuxfleurs.fr>2021-11-17 12:16:49 +0100
commitced94051190a88cf25346ba4cb2e90b499ad1fea (patch)
tree0dd53221e0a4c7f96a021c1ed756ca30b81e060c
parentc74730aa541d19beb5c931b73d2e8fc0d138f2d6 (diff)
downloadgarage-doc/new-pages.tar.gz
garage-doc/new-pages.zip
Add Resticdoc/new-pages
-rw-r--r--doc/book/src/connect/backup.md54
1 files changed, 54 insertions, 0 deletions
diff --git a/doc/book/src/connect/backup.md b/doc/book/src/connect/backup.md
index a0af3833..b3cfca1b 100644
--- a/doc/book/src/connect/backup.md
+++ b/doc/book/src/connect/backup.md
@@ -13,6 +13,60 @@ If you still want to use Borg, you can use it with `rclone mount`.
## Restic
+Create your key and bucket:
+
+```bash
+garage key new my-key
+garage bucket create backup
+garage bucket allow backup --read --write --key my-key
+```
+
+Then register your Key ID and Secret key in your environment:
+
+```bash
+export AWS_ACCESS_KEY_ID=GKxxx
+export AWS_SECRET_ACCESS_KEY=xxxx
+```
+
+Configure restic from environment too:
+
+```bash
+export RESTIC_REPOSITORY="s3:http://localhost:3900/backups"
+
+echo "Generated password (save it safely): $(openssl rand -base64 32)"
+export RESTIC_PASSWORD=xxx # copy paste your generated password here
+```
+
+Do not forget to save your password safely (in your password manager or print it). It will be needed to decrypt your backups.
+
+Now you can use restic:
+
+```bash
+# Initialize the bucket, must be run once
+restic init
+
+# Backup your PostgreSQL database
+# (We suppose your PostgreSQL daemon is stopped for all commands)
+restic backup /var/lib/postgresql
+
+# Show backup history
+restic snapshots
+
+# Backup again your PostgreSQL database, it will be faster as only changes will be uploaded
+restic backup /var/lib/postgresql
+
+# Show backup history (again)
+restic snapshots
+
+# Restore a backup
+# (79766175 is the ID of the snapshot you want to restore)
+mv /var/lib/postgresql /var/lib/postgresql.broken
+restic restore 79766175 --target /var/lib/postgresql
+```
+
+Restic has way more features than the ones presented here.
+You can discover all of them by accessing its documentation from the link below.
+
*External links:* [Restic Documentation > Amazon S3](https://restic.readthedocs.io/en/stable/030_preparing_a_new_repo.html#amazon-s3)
## Duplicity