Add auto-backup settings (#190)

This commit is contained in:
Mitchell Syer
2025-10-14 20:01:18 -04:00
committed by GitHub
parent e5abfdad21
commit 0f06bbaf3c
3 changed files with 87 additions and 66 deletions

View File

@@ -150,6 +150,13 @@ jobs:
-e BACKUP_TIME=13:37 \ -e BACKUP_TIME=13:37 \
-e BACKUP_INTERVAL=2 \ -e BACKUP_INTERVAL=2 \
-e BACKUP_TTL=31 \ -e BACKUP_TTL=31 \
-e AUTO_BACKUP_INCLUDE_MANGA=true \
-e AUTO_BACKUP_INCLUDE_CATEGORIES=false \
-e AUTO_BACKUP_INCLUDE_CHAPTERS=false \
-e AUTO_BACKUP_INCLUDE_TRACKING=false \
-e AUTO_BACKUP_INCLUDE_HISTORY=false \
-e AUTO_BACKUP_INCLUDE_CLIENT_DATA=false \
-e AUTO_BACKUP_INCLUDE_SERVER_SETTINGS=false \
-e FLARESOLVERR_ENABLED=true \ -e FLARESOLVERR_ENABLED=true \
-e FLARESOLVERR_URL=http://flaresolverr:8191 \ -e FLARESOLVERR_URL=http://flaresolverr:8191 \
-e FLARESOLVERR_TIMEOUT=30 \ -e FLARESOLVERR_TIMEOUT=30 \

View File

@@ -36,7 +36,7 @@ Use the template [docker-compose.yml](./docker-compose.yml) in this repo for cre
There are a number of environment variables available to configure Suwayomi: There are a number of environment variables available to configure Suwayomi:
| Variable | Server Default | Description | | Variable | Server Default | Description |
|:--------------------------------------:|:--------------------------------------:|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:| |:---------------------------------------:|:--------------------------------------:|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:|
| **TZ** | `Etc/UTC` | What time zone the container thinks it is. | | **TZ** | `Etc/UTC` | What time zone the container thinks it is. |
| **BIND_IP** | `0.0.0.0` | The interface to listen on, inside the container. You almost never want to change this. | | **BIND_IP** | `0.0.0.0` | The interface to listen on, inside the container. You almost never want to change this. |
| **BIND_PORT** | `4567` | Which port Suwayomi will listen on | | **BIND_PORT** | `4567` | Which port Suwayomi will listen on |
@@ -76,6 +76,13 @@ There are a number of environment variables available to configure Suwayomi:
| **BACKUP_TIME** | `00:00` | Range: hour: 0-23, minute: 0-59 - Time of day at which the automated backup should be triggered | | **BACKUP_TIME** | `00:00` | Range: hour: 0-23, minute: 0-59 - Time of day at which the automated backup should be triggered |
| **BACKUP_INTERVAL** | `1` | Time in days - 0 to disable it - range: 1 <= n < ∞ - Interval in which the server will automatically create a backup | | **BACKUP_INTERVAL** | `1` | Time in days - 0 to disable it - range: 1 <= n < ∞ - Interval in which the server will automatically create a backup |
| **BACKUP_TTL** | `14` | Time in days - 0 to disable it - range: 1 <= n < ∞ - How long backup files will be kept before they will get deleted | | **BACKUP_TTL** | `14` | Time in days - 0 to disable it - range: 1 <= n < ∞ - How long backup files will be kept before they will get deleted |
| **AUTO_BACKUP_INCLUDE_MANGA** | `true` | If the auto-backup should include manga |
| **AUTO_BACKUP_INCLUDE_CATEGORIES** | `true` | If the auto-backup should include categories |
| **AUTO_BACKUP_INCLUDE_CHAPTERS** | `true` | If the auto-backup should include chapters |
| **AUTO_BACKUP_INCLUDE_TRACKING** | `true` | If the auto-backup should include tracking |
| **AUTO_BACKUP_INCLUDE_HISTORY** | `true` | If the auto-backup should include history |
| **AUTO_BACKUP_INCLUDE_CLIENT_DATA** | `true` | If the auto-backup should include client data |
| **AUTO_BACKUP_INCLUDE_SERVER_SETTINGS** | `true` | If the auto-backup should include server settings |
| **FLARESOLVERR_ENABLED** | `false` | Whether FlareSolverr is enabled and available to use | | **FLARESOLVERR_ENABLED** | `false` | Whether FlareSolverr is enabled and available to use |
| **FLARESOLVERR_URL** | `http://localhost:8191` | The URL of the FlareSolverr instance | | **FLARESOLVERR_URL** | `http://localhost:8191` | The URL of the FlareSolverr instance |
| **FLARESOLVERR_TIMEOUT** | `60` | Time in seconds for FlareSolverr to timeout if the challenge is not solved | | **FLARESOLVERR_TIMEOUT** | `60` | Time in seconds for FlareSolverr to timeout if the challenge is not solved |

View File

@@ -90,6 +90,13 @@ sed -i -r "s/server.maxLogFolderSize = \"(.*?)\"( #)?/server.maxLogFolderSize =
sed -i -r "s/server.backupTime = \"(.*?)\"( #)?/server.backupTime = \"${BACKUP_TIME:-\1}\" #/" /home/suwayomi/.local/share/Tachidesk/server.conf sed -i -r "s/server.backupTime = \"(.*?)\"( #)?/server.backupTime = \"${BACKUP_TIME:-\1}\" #/" /home/suwayomi/.local/share/Tachidesk/server.conf
sed -i -r "s/server.backupInterval = ([0-9]+|[a-zA-Z]+)( #)?/server.backupInterval = ${BACKUP_INTERVAL:-\1} #/" /home/suwayomi/.local/share/Tachidesk/server.conf sed -i -r "s/server.backupInterval = ([0-9]+|[a-zA-Z]+)( #)?/server.backupInterval = ${BACKUP_INTERVAL:-\1} #/" /home/suwayomi/.local/share/Tachidesk/server.conf
sed -i -r "s/server.backupTTL = ([0-9]+|[a-zA-Z]+)( #)?/server.backupTTL = ${BACKUP_TTL:-\1} #/" /home/suwayomi/.local/share/Tachidesk/server.conf sed -i -r "s/server.backupTTL = ([0-9]+|[a-zA-Z]+)( #)?/server.backupTTL = ${BACKUP_TTL:-\1} #/" /home/suwayomi/.local/share/Tachidesk/server.conf
sed -i -r "s/server.autoBackupIncludeManga = ([0-9]+|[a-zA-Z]+)( #)?/server.autoBackupIncludeManga = ${AUTO_BACKUP_INCLUDE_MANGA:-\1} #/" /home/suwayomi/.local/share/Tachidesk/server.conf
sed -i -r "s/server.autoBackupIncludeCategories = ([0-9]+|[a-zA-Z]+)( #)?/server.autoBackupIncludeCategories = ${AUTO_BACKUP_INCLUDE_CATEGORIES:-\1} #/" /home/suwayomi/.local/share/Tachidesk/server.conf
sed -i -r "s/server.autoBackupIncludeChapters = ([0-9]+|[a-zA-Z]+)( #)?/server.autoBackupIncludeChapters = ${AUTO_BACKUP_INCLUDE_CHAPTERS:-\1} #/" /home/suwayomi/.local/share/Tachidesk/server.conf
sed -i -r "s/server.autoBackupIncludeTracking = ([0-9]+|[a-zA-Z]+)( #)?/server.autoBackupIncludeTracking = ${AUTO_BACKUP_INCLUDE_TRACKING:-\1} #/" /home/suwayomi/.local/share/Tachidesk/server.conf
sed -i -r "s/server.autoBackupIncludeHistory = ([0-9]+|[a-zA-Z]+)( #)?/server.autoBackupIncludeHistory = ${AUTO_BACKUP_INCLUDE_HISTORY:-\1} #/" /home/suwayomi/.local/share/Tachidesk/server.conf
sed -i -r "s/server.autoBackupIncludeClientData = ([0-9]+|[a-zA-Z]+)( #)?/server.autoBackupIncludeClientData = ${AUTO_BACKUP_INCLUDE_CLIENT_DATA:-\1} #/" /home/suwayomi/.local/share/Tachidesk/server.conf
sed -i -r "s/server.autoBackupIncludeServerSettings = ([0-9]+|[a-zA-Z]+)( #)?/server.autoBackupIncludeServerSettings = ${AUTO_BACKUP_INCLUDE_SERVER_SETTINGS:-\1} #/" /home/suwayomi/.local/share/Tachidesk/server.conf
# cloudflare bypass # cloudflare bypass