diff options
author | Quentin Dufour <quentin@deuxfleurs.fr> | 2021-11-17 12:16:49 +0100 |
---|---|---|
committer | Quentin Dufour <quentin@deuxfleurs.fr> | 2021-11-17 12:16:49 +0100 |
commit | ced94051190a88cf25346ba4cb2e90b499ad1fea (patch) | |
tree | 0dd53221e0a4c7f96a021c1ed756ca30b81e060c /doc/book/src | |
parent | c74730aa541d19beb5c931b73d2e8fc0d138f2d6 (diff) | |
download | garage-doc/new-pages.tar.gz garage-doc/new-pages.zip |
Add Resticdoc/new-pages
Diffstat (limited to 'doc/book/src')
-rw-r--r-- | doc/book/src/connect/backup.md | 54 |
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 |