diff --git a/backend/Dockerfile b/backend/Dockerfile index 628cc31..db03656 100644 --- a/backend/Dockerfile +++ b/backend/Dockerfile @@ -7,4 +7,8 @@ RUN pip install --no-cache-dir -r requirements.txt COPY . . -CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000"] +# Make startup script executable +RUN chmod +x start.sh + +# Run migrations then start server +CMD ["./start.sh"] diff --git a/backend/add_link_columns.py b/backend/migrations/add_link_columns.py similarity index 100% rename from backend/add_link_columns.py rename to backend/migrations/add_link_columns.py diff --git a/backend/add_parent_id_column.py b/backend/migrations/add_parent_id_column.py similarity index 100% rename from backend/add_parent_id_column.py rename to backend/migrations/add_parent_id_column.py diff --git a/backend/add_reaction_table.py b/backend/migrations/add_reaction_table.py similarity index 100% rename from backend/add_reaction_table.py rename to backend/migrations/add_reaction_table.py diff --git a/backend/start.sh b/backend/start.sh new file mode 100644 index 0000000..c46756e --- /dev/null +++ b/backend/start.sh @@ -0,0 +1,17 @@ +#!/bin/bash +set -e + +echo "🔄 Running database migrations..." + +# Run any migration scripts that exist +for script in /app/migrations/*.py; do + if [ -f "$script" ]; then + echo " Running: $(basename $script)" + python "$script" || echo " ⚠️ Migration $script failed (may already be applied)" + fi +done + +echo "✅ Migrations complete. Starting server..." + +# Start the main application +exec uvicorn main:app --host 0.0.0.0 --port 8000