23 lines
512 B
Bash
Executable File
23 lines
512 B
Bash
Executable File
#!/usr/bin/env sh
|
|
set -eu
|
|
|
|
BACKUP_DIR="${BACKUP_DIR:-backups}"
|
|
CONTAINER="${DB_CONTAINER:-ss-db-1}"
|
|
DATABASE="${DB_NAME:-smm}"
|
|
USER="${DB_USER:-smm}"
|
|
PASSWORD="${DB_PASSWORD:-smm_password}"
|
|
TIMESTAMP="$(date +%Y%m%d-%H%M%S)"
|
|
OUTPUT="${BACKUP_DIR}/${DATABASE}-${TIMESTAMP}.sql"
|
|
|
|
mkdir -p "$BACKUP_DIR"
|
|
|
|
docker exec "$CONTAINER" mariadb-dump \
|
|
--user="$USER" \
|
|
--password="$PASSWORD" \
|
|
--single-transaction \
|
|
--routines \
|
|
--triggers \
|
|
"$DATABASE" > "$OUTPUT"
|
|
|
|
printf 'Backup written to %s\n' "$OUTPUT"
|