Kalletlamadhav/sql_optimized_env_new
0
1# STAGE 1: Build Next.js frontend2FROM node:20-slim AS frontend-builder3WORKDIR /frontend4COPY frontend/package*.json ./5RUN npm ci6COPY frontend/ ./7RUN npm run build8 9# STAGE 2: Python backend10FROM python:3.11-slim11WORKDIR /app12RUN apt-get update && apt-get install -y --no-install-recommends gcc g++ curl \13 && rm -rf /var/lib/apt/lists/*14COPY requirements.txt .15RUN pip install --upgrade pip && pip install --no-cache-dir -r requirements.txt16COPY . .17# Copy built Next.js output into static/ — this replaces the old static/18RUN rm -rf ./static && mkdir -p ./static19COPY --from=frontend-builder /frontend/out/ ./static/20RUN mkdir -p /tmp && chmod 777 /tmp21RUN python - <<EOF22from data.seed_database import seed_database23try:24 seed_database("data/fixtures/benchmark_seed42.db", 200000)25except Exception as e:26 print("Seeding skipped:", e)27EOF28RUN useradd -m -u 1000 appuser && chown -R appuser:appuser /app29USER appuser30EXPOSE 786031HEALTHCHECK --interval=30s --timeout=10s --start-period=90s \32 CMD curl -sf http://localhost:7860/health || exit 133CMD ["uvicorn", "server.main:app", "--host", "0.0.0.0", "--port", "7860", "--workers", "1"]