aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Auvolat <alex@adnab.me>2022-05-24 15:32:42 +0200
committerAlex Auvolat <alex@adnab.me>2022-05-24 15:32:42 +0200
commit3be43f3372b33a95b1c033ae9bf8c674ea796d52 (patch)
tree8c50092e26ade965961ec24a82c61dbf62b4c0d0
parent2da448b43f3427700e5f59e8f16f507aa2e1f372 (diff)
downloadgarage-3be43f3372b33a95b1c033ae9bf8c674ea796d52.tar.gz
garage-3be43f3372b33a95b1c033ae9bf8c674ea796d52.zip
Add lost content for Restic with Garage
Suggested-by: Quentin <quentin@deuxfleurs.fr>
-rw-r--r--doc/book/connect/backup.md55
1 files changed, 55 insertions, 0 deletions
diff --git a/doc/book/connect/backup.md b/doc/book/connect/backup.md
index 5110442c..48a2d7be 100644
--- a/doc/book/connect/backup.md
+++ b/doc/book/connect/backup.md
@@ -17,6 +17,61 @@ 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