Influxdb Backup aus Docker Container

nw378

Benutzer
Mitglied seit
04. Jan 2017
Beiträge
3
Punkte für Reaktionen
0
Punkte
1
Hallo,

ich versuche mich gerade an der Backup-Erstellung. Ziel soll es sein, ein automatisches, regelmäßiges Backup zu erstellen, und dieses dann zum Beispiel in OneDrive zu speichern.

Das Backup erstelle ich aktuell in der Konsole mittels

sudo docker exec bdec12344169 influx backup /var/lib/influxdb2 -token HxxxxxxxxxxxxxxTVuRer0iMXoERu7D7uLB3xmbdBcwRxATMNZJ9GoXoQTFla2KdYtxqbUvVR4a-iKQDmgq34Q==

So weit, so gut.

Es werden zahlreiche .gz Dateien erzeugt.

Wie kann ich diese (per Batch?) zu einem ZIP zusammenfassen und dann nach OneDrive schicken?

Idealerweise alles zusammen, nacheinander, täglich. Per Crontab? Gibt`s das auf der Syno?
 

nw378

Benutzer
Mitglied seit
04. Jan 2017
Beiträge
3
Punkte für Reaktionen
0
Punkte
1
Aufgabe selber gelöst.

Skript erstellt, nach Vorlage von https://www.laub-home.de/wiki/Docker_InfluxDB_2_Backup_Script

Code:
#!/usr/bin/env bash

export LANG="en_US.UTF-8"
#Load the Pathes
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
# set the variables

# Where to store the Backup files?
# mount that directory to /backup into the influxdb containers
BACKUPDIR=/volume1/docker/influxdb/backup

# How many Days should a backup be available?
DAYS=2

TIMESTAMP=$(date +"%Y%m%d%H%M")

CONTAINER=$(docker ps --format '{{.Names}}:{{.Image}}' | grep 'influxdb' | cut -d":" -f1)

### Do the stuff
echo -e "Start $TIMESTAMP Backup for Databases: \n"
if [ ! -d $BACKUPDIR ]; then
        mkdir -p $BACKUPDIR
fi

for i in $CONTAINER; do
        echo -e " create Backup for Database on Container:\n  * $i";
        docker exec -e i=$i -e TIMESTAMP=$TIMESTAMP $i influx backup --compression gzip /backup/influxdb/$i-$TIMESTAMP > /dev/null 2>&1
        # dont delete last old backups!
        OLD_BACKUPS=$(ls -d1 $BACKUPDIR/$i* |wc -l)
        if [ $OLD_BACKUPS -gt $DAYS ]; then
                find $BACKUPDIR -maxdepth 1 -name "$i*" -type d -daystart -mtime +$DAYS -type d -exec rm -rf {} \;
        fi
done
echo -e "\n$TIMESTAMP Backup for Databases completed\n"

Ausführung täglich mittels Syno Aufgabenplaner.

Und Sync mit OneDrive mittels CloudSync.
 


 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat 

 
 
  AdBlocker gefunden!

Du bist nicht hier, um Support für Adblocker zu erhalten. Dein Adblocker funktioniert bereits ;-)

Klar machen Adblocker einen guten Job, aber sie blockieren auch nützliche Funktionen.

Das Forum wird mit hohem technischen, zeitlichen und finanziellen Aufwand kostenfrei zur Verfügung gestellt. Wir zeigen keine offensive Werbung und bemühen uns um eine dezente Integration.

Bitte unterstütze dieses Forum, in dem du deinen Adblocker für diese Seite deaktivierst.

Du kannst uns auch über unseren Kaffeautomat einen Kaffe ausgeben oder ein PUR Abo abschließen und das Forum so werbefrei nutzen.

Vielen Dank für Deine Unterstützung!