#!/usr/bin/env bash set -euo pipefail source ./scripts/Unix/starter.sh echo "Verifying all images are present..." if command -v jq >/dev/null 2>&1; then images=$(docker compose config --format json | jq -r '.services[].image // empty') if [ -n "$images" ]; then for image in $images; do if ! docker image inspect "$image" > /dev/null 2>&1; then echo "Required images not found. Please run install.sh first." >&2 exit 1 fi echo " - Found image: $image" done fi else echo "jq is not installed; skipping image verification step." fi echo "Spinning services up..." docker compose up --no-build --detach --wait echo "Services are up and healthy!" echo "Completing pre-run tasks..." docker compose exec app uv run python manage.py migrate --no-input --verbosity 0 docker compose exec app uv run python manage.py initialize docker compose exec app uv run python manage.py set_default_caches docker compose exec app uv run python manage.py search_index --rebuild -f docker compose exec app uv run python manage.py collectstatic --clear --no-input --verbosity 0 echo "Pre-run tasks completed successfully!" echo "Cleaning unused Docker data..." docker system prune -f echo "Unused Docker data cleaned successfully!" echo "All done! eVibes is up and running!"