From cce0270c0d1038af174f5174ba461ebe5ecc8da9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maurice=20Preu=C3=9F?= Date: Sat, 21 Mar 2026 13:24:06 +0000 Subject: [PATCH] =?UTF-8?q?docker/dockup.sh=20hinzugef=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docker/dockup.sh | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 docker/dockup.sh diff --git a/docker/dockup.sh b/docker/dockup.sh new file mode 100644 index 0000000..74d877a --- /dev/null +++ b/docker/dockup.sh @@ -0,0 +1,44 @@ +#!/bin/bash +set -e +# Docker backup & restore script +# +# curl -fsSL https://gist.github.com/envoyr/fcf09ef95cf372475835761ece34c44f/raw/dockup.sh -o /usr/local/bin/dockup +# sudo chmod +x /usr/local/bin/dockup +# dockup backup database /var/lib/mysql baqckup.tar + +ACTION=$1 +SERVICE=$2 +DIRECTORY=$3 +BACKUP_FILE=$4 + +run_backup() { + docker run --rm --volumes-from $SERVICE -v $(pwd):/backup ubuntu tar cvf /backup/$BACKUP_FILE $DIRECTORY + echo "Backup completed!" +} + +run_restore() { + docker run --rm --volumes-from $SERVICE -v $(pwd):/backup ubuntu bash -c "cd $DIRECTORY && tar xvf /backup/$BACKUP_FILE --strip 1" + echo "Restore completed!" +} + +run() { + if [[ "${UID}" -ne 0 ]]; then + echo "You need to run this script as root" + exit 1 + fi + + case $ACTION in + backup) + run_backup + ;; + retsore) + run_restore + ;; + *) + echo "Please set your backup / restore method in first argument." + exit 1 + ;; + esac +} + +run \ No newline at end of file