#!/bin/bash DATE=$(date +"%Y-%m-%d_%H-%M") BACKUP_NAME="gitea_backup_$DATE.tar.gz" BACKUP_TMP="/tmp/$BACKUP_NAME" echo "[INFO] Creating backup from Docker container..." docker exec gitea tar -czf - /data > "$BACKUP_TMP" if [ $? -ne 0 ]; then echo "[ERROR] Failed to create backup!" exit 1 fi FTP_HOST="ftp.example.com" FTP_USER="your_ftp_user" FTP_PASS="your_ftp_pass" FTP_DIR="/backups/gitea" echo "[INFO] Uploading backup to FTP server..." curl -T "$BACKUP_TMP" --user "$FTP_USER:$FTP_PASS" "ftp://$FTP_HOST$FTP_DIR/$BACKUP_NAME" if [ $? -ne 0 ]; then echo "[ERROR] Failed to upload to FTP!" exit 2 fi echo "[INFO] Cleaning up..." rm -f "$BACKUP_TMP" echo "[SUCCESS] Backup completed successfully at $DATE."