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:
@@ -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:
|
||||
|
||||
Reference in New Issue
Block a user