| FROM node:20-alpine AS fe | |
| WORKDIR /fe | |
| COPY frontend/package*.json ./ | |
| RUN npm ci | |
| COPY frontend/ ./ | |
| RUN npm run build | |
| FROM python:3.11-slim | |
| WORKDIR /app | |
| ENV HF_HOME=/tmp/hf \ | |
| TRANSFORMERS_CACHE=/tmp/hf/transformers \ | |
| SENTENCE_TRANSFORMERS_HOME=/tmp/hf/sentence_transformers \ | |
| PYTHONDONTWRITEBYTECODE=1 \ | |
| PYTHONUNBUFFERED=1 | |
| COPY backend/ /app/backend/ | |
| COPY backend/requirements.txt /app/requirements.txt | |
| RUN pip install --no-cache-dir -r /app/requirements.txt | |
| RUN mkdir -p /app/backend/static | |
| COPY --from=fe /fe/dist /app/backend/static | |
| EXPOSE 7860 | |
| CMD ["uvicorn", "backend.main:app", "--host", "0.0.0.0", "--port", "7860"] | |