23 lines
659 B
Bash
23 lines
659 B
Bash
|
|
#!/bin/sh
|
||
|
|
|
||
|
|
# Ensure data directory exists with proper permissions
|
||
|
|
mkdir -p /app/data
|
||
|
|
chown -R nodejs:nodejs /app/data
|
||
|
|
|
||
|
|
# Set database path to data directory
|
||
|
|
export DATABASE_URL="file:/app/data/prod.db"
|
||
|
|
|
||
|
|
# Run Prisma migrations (as root, then switch to nodejs)
|
||
|
|
echo "Running database migrations..."
|
||
|
|
npx prisma db push --skip-generate || echo "Database push failed, will try on startup..."
|
||
|
|
|
||
|
|
# Fix database file permissions after creation
|
||
|
|
if [ -f /app/data/prod.db ]; then
|
||
|
|
chown nodejs:nodejs /app/data/prod.db
|
||
|
|
chmod 664 /app/data/prod.db
|
||
|
|
fi
|
||
|
|
|
||
|
|
# Start the application as nodejs user
|
||
|
|
echo "Starting application..."
|
||
|
|
exec su-exec nodejs npx tsx src/index.ts
|