Add Gitea backup/restore scripts, parameterize configs
- Add gitea/backup.sh and gitea/restore.sh - Move hardcoded values in gitea/docker-compose.yml to gitea/.env - Move immich .env from root to immich-app/, update env_file path - Remove root docker-compose.yml (was only an include alias) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
39
gitea/backup.sh
Executable file
39
gitea/backup.sh
Executable file
@@ -0,0 +1,39 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
||||
source "$SCRIPT_DIR/.env"
|
||||
|
||||
if [ ! -d "$BACKUP_DIR" ]; then
|
||||
echo "Error: BACKUP_DIR does not exist: $BACKUP_DIR" >&2
|
||||
exit 1
|
||||
fi
|
||||
if ! docker info > /dev/null 2>&1; then
|
||||
echo "Error: Docker is not accessible" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
cleanup() {
|
||||
echo "Restarting all services..."
|
||||
docker compose -f "$SCRIPT_DIR/docker-compose.yml" up -d
|
||||
}
|
||||
trap cleanup EXIT
|
||||
|
||||
echo "Stopping all services..."
|
||||
docker compose -f "$SCRIPT_DIR/docker-compose.yml" down
|
||||
|
||||
echo "Starting database only..."
|
||||
docker compose -f "$SCRIPT_DIR/docker-compose.yml" up -d db
|
||||
sleep 5
|
||||
|
||||
echo "Running gitea dump..."
|
||||
docker run --rm \
|
||||
--network gitea_gitea \
|
||||
-e USER_UID=1001 \
|
||||
-e USER_GID=1001 \
|
||||
-v "${GITEA_DATA}:/data" \
|
||||
-v "${BACKUP_DIR}:/backup" \
|
||||
docker.gitea.com/gitea:1.25.3 \
|
||||
/bin/sh -c "chown 1001:1001 /tmp && su-exec 1001:1001 /bin/sh -c 'cd /tmp && gitea dump -c /data/gitea/conf/app.ini --tempdir /tmp' > /backup/backup.log 2>&1 && cp /tmp/gitea-dump-*.zip /backup/"
|
||||
|
||||
echo "Backup completed successfully"
|
||||
Reference in New Issue
Block a user