1.6 KiB
1.6 KiB
Backup Architecture details
- we use restic to produce small & encrypted backups
- backup is scheduled at
schedule: "10 23 * * *"
- Gitea stores files in
/data/gitea
and/data/git/repositories
, these files are backed up. - The postgres db is also backed up
Manual init the restic repository for the first time
- apply backup-and-restore pod:
kubectl scale deployment backup-restore --replicas=1
- exec into pod and execute restore pod (press tab to get your exact pod name)
kubectl exec -it backup-restore-... -- /usr/local/bin/init.sh
- remove backup-and-restore pod:
kubectl scale deployment backup-restore --replicas=0
Manual backup the restic repository for the first time
- apply backup-and-restore pod:
kubectl scale deployment backup-restore --replicas=1
- exec into pod and execute backup pod (press tab to get your exact pod name)
kubectl exec -it backup-restore-... -- /usr/local/bin/backup.sh
- remove backup-and-restore pod:
kubectl scale deployment backup-restore --replicas=0
Manual restore
- apply backup-and-restore pod:
kubectl scale deployment backup-restore --replicas=1
- Scale down gitea deployment:
kubectl scale deployment gitea --replicas=0
- exec into pod and execute restore pod (press tab to get your exact pod name)
kubectl exec -it backup-restore-... -- /usr/local/bin/restore.sh
- Start gitea again:
kubectl scale deployment gitea --replicas=1
- remove backup-and-restore pod:
kubectl scale deployment backup-restore --replicas=0