#!/bin/bash set -e # Exit on any error # Ensure data directory exists mkdir -p /app/data echo "=== Sneaky Klaus Container Startup ===" echo "Data directory: /app/data" echo "Database path: /app/data/sneaky-klaus.db" # Check if database exists if [ -f /app/data/sneaky-klaus.db ]; then echo "Existing database found ($(ls -lh /app/data/sneaky-klaus.db | awk '{print $5}'))" else echo "No existing database - will be created by migrations" fi # List contents of data directory echo "Data directory contents:" ls -la /app/data/ || echo "(empty)" echo "" echo "Running database migrations..." if uv run alembic upgrade head; then echo "Database migrations completed successfully" else echo "ERROR: Database migration failed!" echo "Please check the logs above for details." exit 1 fi echo "" echo "Starting application server..." exec gunicorn --bind 0.0.0.0:8000 --workers 2 --threads 4 main:app