diff options
author | Alex Auvolat <alex@adnab.me> | 2022-05-24 15:32:42 +0200 |
---|---|---|
committer | Alex Auvolat <alex@adnab.me> | 2022-05-24 15:32:42 +0200 |
commit | 3be43f3372b33a95b1c033ae9bf8c674ea796d52 (patch) | |
tree | 8c50092e26ade965961ec24a82c61dbf62b4c0d0 | |
parent | 2da448b43f3427700e5f59e8f16f507aa2e1f372 (diff) | |
download | garage-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.md | 55 |
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 |