Added Grafana & Prometheus
This commit is contained in:
29
scripts/backup-db.sh
Executable file
29
scripts/backup-db.sh
Executable file
@ -0,0 +1,29 @@
|
||||
#!/bin/bash
|
||||
|
||||
COMPOSE_PATH=/root/new-services
|
||||
|
||||
|
||||
databases=$(docker compose -f ${COMPOSE_PATH}/compose.yml ps | grep '\-db' | awk '{print $1}' | tr '\n' ' ')
|
||||
|
||||
for db in $databases; do
|
||||
db_env_path=${COMPOSE_PATH}/env/${db}.env
|
||||
|
||||
if [ ! -f $db_env_path ]; then
|
||||
echo "Could not find the environment file for database '$db'"
|
||||
continue
|
||||
fi
|
||||
|
||||
db_service=${db/\-db/}
|
||||
db_passwd=$(cat $db_env_path | grep MYSQL_ROOT_PASSWORD | tr '=' ' ' | awk '{print $NF}' | tr -d '"')
|
||||
db_dmp_cmd="mysqldump --password=${db_passwd} ${db_service} > /root/${db_service}.sql"
|
||||
|
||||
echo -e "\nDumping database '${db}'"
|
||||
docker exec ${db} sh -c "$db_dmp_cmd" &> /dev/null
|
||||
|
||||
echo "Copying database dump '${db_service}.sql' to '${COMPOSE_PATH}/sql/${db_service}.sql'"
|
||||
docker cp ${db}:/root/${db_service}.sql ${COMPOSE_PATH}/sql/${db_service}.sql &> /dev/null
|
||||
|
||||
chown -R root:root ${COMPOSE_PATH}/sql
|
||||
done
|
||||
|
||||
echo -e "\nDumping complete!"
|
Reference in New Issue
Block a user