rating display fix & directory mapping
This commit is contained in:
69
migrate-volumes.sh
Normal file
69
migrate-volumes.sh
Normal file
@@ -0,0 +1,69 @@
|
||||
#!/bin/bash
|
||||
# Migration script: move StoryCove Docker volume data to new NAS directories.
|
||||
# Run this on the NAS as root (or with sudo) BEFORE restarting the stack.
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
SRC_BASE="/volume1/@docker/volumes"
|
||||
DST_BASE="/volume1/docker/storycove"
|
||||
|
||||
declare -A VOLUMES=(
|
||||
["storycove_solr_data/_data"]="solr"
|
||||
["storycove_postgres_data/_data"]="postgres"
|
||||
["storycove_library_config/_data"]="config"
|
||||
["storycove_images_data/_data"]="images"
|
||||
["storycove_automatic_backups/_data"]="backups"
|
||||
)
|
||||
|
||||
echo "=== StoryCove volume migration ==="
|
||||
echo ""
|
||||
|
||||
# Verify source directories exist
|
||||
for src_rel in "${!VOLUMES[@]}"; do
|
||||
src="$SRC_BASE/$src_rel"
|
||||
if [ ! -d "$src" ]; then
|
||||
echo "ERROR: Source directory not found: $src"
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
|
||||
# Create destination directories if they don't exist
|
||||
for dst_rel in "${VOLUMES[@]}"; do
|
||||
dst="$DST_BASE/$dst_rel"
|
||||
if [ ! -d "$dst" ]; then
|
||||
echo "Creating directory: $dst"
|
||||
mkdir -p "$dst"
|
||||
fi
|
||||
done
|
||||
|
||||
echo ""
|
||||
echo "Stopping StoryCove stack (docker compose down)..."
|
||||
cd "$(dirname "$0")"
|
||||
docker compose down
|
||||
|
||||
echo ""
|
||||
echo "Migrating data..."
|
||||
|
||||
for src_rel in "${!VOLUMES[@]}"; do
|
||||
dst_rel="${VOLUMES[$src_rel]}"
|
||||
src="$SRC_BASE/$src_rel"
|
||||
dst="$DST_BASE/$dst_rel"
|
||||
|
||||
echo ""
|
||||
echo " $src"
|
||||
echo " -> $dst"
|
||||
|
||||
rsync -a --info=progress2 "$src/" "$dst/"
|
||||
done
|
||||
|
||||
echo ""
|
||||
echo "Migration complete."
|
||||
echo ""
|
||||
echo "Old volume directories have NOT been deleted."
|
||||
echo "Once you have verified the stack works correctly, you can remove them with:"
|
||||
echo ""
|
||||
for src_rel in "${!VOLUMES[@]}"; do
|
||||
echo " rm -rf \"$SRC_BASE/$src_rel\""
|
||||
done
|
||||
echo ""
|
||||
echo "Start the stack again with: docker compose up -d"
|
||||
Reference in New Issue
Block a user