1
Fork 0
mirror of https://github.com/Steffo99/backup-duplicity.git synced 2024-12-22 11:34:22 +00:00

Changes to the README

This commit is contained in:
Steffo 2024-10-25 08:57:54 +02:00
parent 7dd5322e77
commit e2227c40f9
Signed by: steffo
GPG key ID: 5ADA3868646C3FC0

View file

@ -19,8 +19,8 @@ Backup solution for Docker volumes based on Duplicity
1. Create a new directory somewhere on your system to use to store certain configuration files; it can be anywhere, but for the purposes of this guide, it'll be referred to as `$ga_config_dir`, and will be located in `/srv/docker/.ga`: 1. Create a new directory somewhere on your system to use to store certain configuration files; it can be anywhere, but for the purposes of this guide, it'll be referred to as `$ga_config_dir`, and will be located in `/srv/docker/.ga`:
```bash ```bash
mkdir --verbose --parents /srv/docker/.ga
export ga_config_dir="/srv/docker/.ga" export ga_config_dir="/srv/docker/.ga"
mkdir --verbose --parents "$ga_config_dir"
``` ```
1. Create a new file inside `$ga_config_dir` secret with the name `ga_passphrase.txt`, which will contain the password used to encrypt backups before uploading them to Google Drive: 1. Create a new file inside `$ga_config_dir` secret with the name `ga_passphrase.txt`, which will contain the password used to encrypt backups before uploading them to Google Drive:
@ -73,6 +73,12 @@ Backup solution for Docker volumes based on Duplicity
# If you don't want to use ntfy, set this to an empty string, "". # If you don't want to use ntfy, set this to an empty string, "".
x-ga-ntfy: &ga_ntfy x-ga-ntfy: &ga_ntfy
"https://ntfy.sh/phil_alerts" "https://ntfy.sh/phil_alerts"
# The path to the `ga_passphrase.txt` file.
x-ga-passphrase: &ga_passphrase
"/srv/docker/.ga/ga_passphrase.txt"
# The path to the `ga_gdrive_client_secret.json` file.
x-ga-gdrive-client-secret: &ga_gdrive_client_secret
"/srv/docker/.ga/ga_gdrive_client_secret.json"
``` ```
1. Merge the following keys with the rest of your existent `compose.yml` project: 1. Merge the following keys with the rest of your existent `compose.yml` project:
@ -108,22 +114,18 @@ Backup solution for Docker volumes based on Duplicity
secrets: secrets:
- ga_passphrase - ga_passphrase
- ga_gdrive_client_secret - ga_gdrive_client_secret
```
```yaml
volumes: volumes:
ga_cache: ga_cache:
external: true external: true
ga_credentials: ga_credentials:
external: true external: true
```
```yaml
secrets: secrets:
ga_passphrase: ga_passphrase:
file: file: *ga_passphrase
ga_gdrive_client_secret: ga_gdrive_client_secret:
external: true file: *ga_gdrive_client_secret
``` ```
1. Bring up the Compose project: 1. Bring up the Compose project:
@ -144,19 +146,15 @@ Backup solution for Docker volumes based on Duplicity
Complete the authentication to proceed. Complete the authentication to proceed.
(Make sure to read the alert below if you're having issues!) > For authentication to work correctly after [Google's removal of the OOB Flow](https://developers.google.com/identity/protocols/oauth2/resources/oob-migration), your `http://localhost:80` address needs to match the `http://localhost:80` of the Gestalt Amadeus container.
>
> This is not an issue if you can launch a browser on the same machine you're configuring Gestalt Amadeus, but it might be troublesome for non-graphical servers, where this is not possible.
>
> To apply a quick band-aid to the issue, you can temporarily set up an SSH tunnel towards the server for the duration of the setup process:
>
> ```bash
> # This unfortunately requires root access, since the port we have to tunnel, 80, has a number lower than 1024.
> sudo ssh -L 80:80 yourserver
> ```
1. You should be done! Make sure backups are appearing in the Google Drive directory you've configured. 1. You should be done! Make sure backups are appearing in the Google Drive directory you've configured.
> [!CAUTION]
>
> For authentication to work correctly after [Google's removal of the OOB Flow](https://developers.google.com/identity/protocols/oauth2/resources/oob-migration), your `http://localhost:80` address needs to match the `http://localhost:80` of the Gestalt Amadeus container.
>
> This is not an issue if you can launch a browser on the same machine you're configuring Gestalt Amadeus, but it might be troublesome for non-graphical servers, where this is not possible.
>
> To apply a quick band-aid to the issue, you can temporarily set up an SSH tunnel towards the server for the duration of the setup process:
>
> ```bash
> # This unfortunately requires root access, since the port we have to tunnel, 80, has a number lower than 1024.
> sudo ssh -L 80:80 yourserver
> ```