EspoCRM related shell scripts, initial versions
This commit is contained in:
34
backup_espocrm.sh
Executable file
34
backup_espocrm.sh
Executable file
@@ -0,0 +1,34 @@
|
||||
#!/bin/bash
|
||||
|
||||
# To be run by user mkt to back up the EspoCRM pod: a MariaDB dump and a
|
||||
# tarball of the EspoCRM data dir (config.php with crypt/passwordSalt key,
|
||||
# data/upload, custom). Manual invocation only (no timer, no cron).
|
||||
|
||||
# Environment variables
|
||||
POD_NAME='espocrm_pod'
|
||||
DB_CTR='mariadb_ctr'
|
||||
DB_NAME='espocrm'
|
||||
BIND_DIR="$HOME/.local/share/$POD_NAME"
|
||||
ESPO_DATA_DIR="$BIND_DIR/espocrm" # /var/www/html
|
||||
BAK_DIR="$HOME/bak"
|
||||
TS=$(date +%Y%m%d-%H%M%S)
|
||||
|
||||
mkdir -p "$BAK_DIR"
|
||||
|
||||
# DB dump: run inside the container so no password is needed in this script;
|
||||
# MARIADB_ROOT_PASSWORD is taken from the container's own environment.
|
||||
DB_BAK="$BAK_DIR/espocrm-db-$TS.sql.gz"
|
||||
podman exec "$DB_CTR" sh -c \
|
||||
'exec mariadb-dump --single-transaction --routines --triggers -uroot -p"$MARIADB_ROOT_PASSWORD" '"$DB_NAME" \
|
||||
| gzip > "$DB_BAK"
|
||||
echo "Wrote DB dump $DB_BAK (rc=$?)"
|
||||
|
||||
# File backup of the EspoCRM data directory
|
||||
FILES_BAK="$BAK_DIR/espocrm-files-$TS.tar.gz"
|
||||
tar -czf "$FILES_BAK" -C "$ESPO_DATA_DIR" .
|
||||
echo "Wrote files backup $FILES_BAK (rc=$?)"
|
||||
|
||||
echo ""
|
||||
echo "Backup complete:"
|
||||
echo " $DB_BAK"
|
||||
echo " $FILES_BAK"
|
||||
Reference in New Issue
Block a user