first commit
This commit is contained in:
@@ -0,0 +1,34 @@
|
|||||||
|
networks:
|
||||||
|
forgejo:
|
||||||
|
external: false
|
||||||
|
|
||||||
|
services:
|
||||||
|
server:
|
||||||
|
image: gitea/gitea:latest
|
||||||
|
container_name: forgejo
|
||||||
|
environment:
|
||||||
|
- USER_UID=1000
|
||||||
|
- USER_GID=1000
|
||||||
|
- GITEA__server__DOMAIN=code.neugasse.lan
|
||||||
|
- GITEA__server__ROOT_URL=http://code.neugasse.lan
|
||||||
|
- GITEA__server__HTTP_PORT=3000
|
||||||
|
- GITEA__server__SSH_DOMAIN=code.neugasse.lan
|
||||||
|
- GITEA__server__SSH_PORT=922
|
||||||
|
- GITEA__service__DISABLE_REGISTRATION=true
|
||||||
|
# --- E-Mail via mailbox.org ---
|
||||||
|
- GITEA__mailer__ENABLED=true
|
||||||
|
- GITEA__mailer__FROM=minitux@mailbox.org
|
||||||
|
- GITEA__mailer__PROTOCOL=smtps
|
||||||
|
- GITEA__mailer__SMTP_ADDR=smtp.mailbox.org
|
||||||
|
- GITEA__mailer__SMTP_PORT=465
|
||||||
|
- GITEA__mailer__USER=minitux@mailbox.org
|
||||||
|
- GITEA__mailer__PASSWD=4711Cayenne64
|
||||||
|
restart: always
|
||||||
|
networks:
|
||||||
|
- forgejo
|
||||||
|
volumes:
|
||||||
|
- /home/hans/forgejo/data:/data
|
||||||
|
- /etc/localtime:/etc/localtime:ro
|
||||||
|
ports:
|
||||||
|
- '3000:3000'
|
||||||
|
- '922:22'
|
||||||
@@ -0,0 +1,32 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# /usr/local/bin/gitea-backup.sh
|
||||||
|
|
||||||
|
BACKUP_DIR="/backup/gitea"
|
||||||
|
DATA_DIR="/home/hans/forgejo/data"
|
||||||
|
CONTAINER_NAME="forgejo" # Dein container_name aus der Compose-Datei
|
||||||
|
RETENTION_DAYS=14
|
||||||
|
|
||||||
|
mkdir -p "$BACKUP_DIR"
|
||||||
|
TIMESTAMP=$(date +%Y%m%d-%H%M)
|
||||||
|
|
||||||
|
echo "[$(date)] Starting Gitea backup..."
|
||||||
|
|
||||||
|
# Backup im Container erstellen
|
||||||
|
docker exec -u git -w /data "$CONTAINER_NAME" \
|
||||||
|
/app/gitea/gitea dump -c /data/gitea/conf/app.ini \
|
||||||
|
--file /data/gitea-dump.zip
|
||||||
|
|
||||||
|
# Vom gemappten Volume ins Backup-Verzeichnis verschieben
|
||||||
|
if [ -f "$DATA_DIR/gitea-dump.zip" ]; then
|
||||||
|
mv "$DATA_DIR/gitea-dump.zip" "$BACKUP_DIR/gitea-dump-$TIMESTAMP.zip"
|
||||||
|
chmod 600 "$BACKUP_DIR/gitea-dump-$TIMESTAMP.zip"
|
||||||
|
|
||||||
|
# Alte Backups entfernen
|
||||||
|
find "$BACKUP_DIR" -name "gitea-dump-*.zip" -mtime +$RETENTION_DAYS -delete
|
||||||
|
|
||||||
|
SIZE=$(du -h "$BACKUP_DIR/gitea-dump-$TIMESTAMP.zip" | cut -f1)
|
||||||
|
echo "[$(date)] Backup completed: gitea-dump-$TIMESTAMP.zip ($SIZE)"
|
||||||
|
else
|
||||||
|
echo "[$(date)] ERROR: Backup file not found!"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
Reference in New Issue
Block a user