Add automated daily Gitea backup

Alpine sidecar container runs gitea dump via docker exec at 2 AM daily,
writing backups to /data/backup/gitea/ with 7-day retention.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-19 21:33:18 +01:00
co-authored by Claude Opus 4.6
parent 9fc824e3ac
commit cce5c54177
2 changed files with 81 additions and 0 deletions
+24
View File
@@ -15,9 +15,33 @@ services:
- gitea_data:/data
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
- /data/backup/gitea:/tmp/backup
ports:
- "3008:3000"
- "2222:22"
gitea-backup:
image: alpine:3.21
container_name: gitea-backup
depends_on:
- gitea
restart: unless-stopped
environment:
- BACKUP_RETAIN_DAYS=7
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /data/backup/gitea:/backup
- ./backup.sh:/usr/local/bin/backup.sh:ro
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
entrypoint: /bin/sh
command:
- -c
- |
apk add --no-cache docker-cli
echo "0 2 * * * /usr/local/bin/backup.sh >> /var/log/backup.log 2>&1" > /etc/crontabs/root
touch /var/log/backup.log
crond -f -l 2
volumes:
gitea_data: