#!/bin/sh set -e echo "=== Netflix Scraper API Startup ===" # Set DATABASE_URL from individual POSTGRES_* environment variables # This overrides the dummy value set during Docker build export DATABASE_URL="postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${POSTGRES_HOST}:${POSTGRES_PORT}/${POSTGRES_DB}" echo "Database URL configured: postgresql://${POSTGRES_USER}:***@${POSTGRES_HOST}:${POSTGRES_PORT}/${POSTGRES_DB}" # Wait for database to be ready echo "Waiting for database..." until nc -z $POSTGRES_HOST $POSTGRES_PORT; do echo "Database not ready, waiting..." sleep 2 done echo "Database is ready!" # Run migrations echo "Running database migrations..." npx prisma migrate deploy # Run seed (optional, won't fail if already seeded) echo "Running seed..." npx tsx prisma/seed.ts || echo "Seed already run or not needed" # Start the application echo "Starting application..." exec node dist/index.js