Infrastructure docs, IaC scripts, skills energy (VOLTTRON, EnergyPlus, OpenStudio, BuildingGym, OSeMOSYS)
This commit is contained in:
56
scripts/full_backup.sh
Executable file
56
scripts/full_backup.sh
Executable file
@@ -0,0 +1,56 @@
|
||||
#!/bin/bash
|
||||
# Cariflex Full Backup Script
|
||||
BACKUP_DIR="/home/eric/backups/cariflex/$(date +%Y%m%d_%H%M%S)"
|
||||
mkdir -p "$BACKUP_DIR"
|
||||
|
||||
echo "=== Cariflex Full Backup $(date) ==="
|
||||
|
||||
# 1. PostgreSQL dump
|
||||
echo "Backing up PostgreSQL..."
|
||||
docker exec flexmeasures-db pg_dump -U flexmeasures flexmeasures | gzip > "$BACKUP_DIR/flexmeasures_db.sql.gz"
|
||||
|
||||
# 2. Redis dump
|
||||
echo "Backing up Redis..."
|
||||
docker exec flexmeasures-redis redis-cli BGSAVE
|
||||
docker cp flexmeasures-redis:/data/dump.rdb "$BACKUP_DIR/redis_dump.rdb"
|
||||
|
||||
# 3. FM config and templates
|
||||
echo "Backing up FM config..."
|
||||
cp -r /home/eric/cariflex/templates "$BACKUP_DIR/"
|
||||
cp -r /home/eric/cariflex/config "$BACKUP_DIR/" 2>/dev/null || true
|
||||
cp /home/eric/flexmeasures/docker-compose.yml "$BACKUP_DIR/"
|
||||
cp /home/eric/flexmeasures/docker-compose.openadr.yml "$BACKUP_DIR/"
|
||||
|
||||
# 4. OpenADR scripts
|
||||
echo "Backing up OpenADR..."
|
||||
cp -r /home/eric/flexmeasures/*.py "$BACKUP_DIR/"
|
||||
cp /home/eric/flexmeasures/Dockerfile.openadr "$BACKUP_DIR/"
|
||||
cp /home/eric/flexmeasures/start_ven.sh "$BACKUP_DIR/"
|
||||
|
||||
# 5. Grafana dashboards
|
||||
echo "Backing up Grafana dashboards..."
|
||||
curl -s -u admin:admin "http://localhost:3001/api/dashboards/uid/cariflex-ems-full" | python3 -c "
|
||||
import json, sys
|
||||
d = json.load(sys.stdin)
|
||||
with open('$BACKUP_DIR/grafana_dashboard.json', 'w') as f:
|
||||
json.dump(d, f, indent=2)
|
||||
print('Dashboard saved')
|
||||
"
|
||||
|
||||
# 6. Docker container states
|
||||
echo "Backing up container states..."
|
||||
docker ps --format "table {{.Names}}\t{{.Image}}\t{{.Status}}" > "$BACKUP_DIR/containers.txt"
|
||||
docker inspect openadr-vtn openadr-ven flexmeasures-server flexmeasures-db flexmeasures-redis 2>/dev/null > "$BACKUP_DIR/container_inspects.json"
|
||||
|
||||
# 7. Network config
|
||||
echo "Backing up network config..."
|
||||
docker network inspect openadr-internal 2>/dev/null > "$BACKUP_DIR/network_openadr.json"
|
||||
docker network inspect traefik-public 2>/dev/null > "$BACKUP_DIR/network_traefik.json"
|
||||
|
||||
# 8. Compress
|
||||
echo "Compressing..."
|
||||
tar -czf "$BACKUP_DIR.tar.gz" -C "$(dirname $BACKUP_DIR)" "$(basename $BACKUP_DIR)"
|
||||
rm -rf "$BACKUP_DIR"
|
||||
|
||||
echo "=== Backup complete: $BACKUP_DIR.tar.gz ==="
|
||||
ls -lh "$BACKUP_DIR.tar.gz"
|
||||
Reference in New Issue
Block a user