Du kannst nicht mehr als 25 Themen auswählen Themen müssen mit entweder einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.

backup.sh 740B

1234567891011121314151617181920212223242526272829303132
  1. #! /bin/sh
  2. #
  3. if [ ! -f "${PWD}/.env" ]; then
  4. echo "missing env file in ${PWD}"
  5. exit 1
  6. fi
  7. set -a
  8. . "${PWD}/.env"
  9. set +a
  10. now="$(date +%Y-%m_%d-%H-%M-%S)"
  11. backup_path="${PWD}/backup-volumes/${now}"
  12. mkdir -p "${backup_path}"
  13. volumes="db traefik-dynamic traefik-certs traefik-logs traefik-static webroot"
  14. for volume in ${volumes}; do
  15. mkdir -p "${backup_path}/${volume}"
  16. docker run \
  17. --rm \
  18. --volume "${backup_path}/${volume}":/destination \
  19. --volume "${PREFIX}-${volume}:/${volume}" \
  20. ubuntu \
  21. tar -cvzf "/destination/${volume}.tar.gz" -C "/${volume}" .
  22. done
  23. docker exec "${PREFIX}-db" \
  24. /usr/bin/mysqldump \
  25. -u root \
  26. --password="${DB_ROOT_PASSWORD}" \
  27. "${DB_NAME}" > "${backup_path}/db/${DB_NAME}.sql"