# Docker Backup SFTP Uploader Dieses Repository enthält ein Bash-Script, das ein Docker-Compose-Projekt kurz stoppt, das Projektverzeichnis als `tar.gz` archiviert, das Archiv per SFTP hochlädt und optional eine Status-Mail verschickt. ## Nutzung Voraussetzungen auf dem Server: - `docker` mit Compose-Plugin - `tar` und `gzip` - `sshpass` und `sftp` - optional `mail` für Status-Mails ```bash chmod +x docker-backup-sftp-uploader.sh ./docker-backup-sftp-uploader.sh ``` Die wichtigsten Einstellungen können direkt im Script angepasst oder als Umgebungsvariablen gesetzt werden: ```bash export SFTP_HOST="backup.example.com" export SFTP_PORT="22" export SFTP_USER="backup-user" export SFTP_PASS="secret" export SFTP_REMOTE_DIR="/uploads" export MAIL_TO="admin@example.com" export MAIL_FROM="backup@example.com" export BACKUP_DIR="/srv/backups/docker-backup-sftp-uploader" ./docker-backup-sftp-uploader.sh ``` ## Wichtige Hinweise - Archive und Logs werden nicht mehr in `/tmp` geschrieben. Standard ist ein Backup-Ordner neben dem Projektverzeichnis. - Vor dem Stoppen von Docker prüft das Script, ob am Backup-Ziel genug Speicher frei ist. - Bei Fehlern versucht das Script, Docker wieder zu starten. - Der Upload erfolgt zuerst als `.part`-Datei und wird nach erfolgreichem Transfer auf den finalen Namen umbenannt. - Mailversand ist nur aktiv, wenn `MAIL_TO` gesetzt ist und das System ein funktionierendes `mail`-Kommando besitzt. Weitere Details stehen in [docs/README.md](docs/README.md).