FROM node:20-bullseye AS frontend-build WORKDIR /app/frontend COPY frontend/package*.json ./ RUN npm install COPY frontend/ . RUN npm run build FROM python:3.11-slim WORKDIR /app COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt COPY . . COPY --from=frontend-build /app/frontend/dist ./frontend/dist EXPOSE 7860 CMD ["gunicorn", "--bind", "0.0.0.0:7860", "app:app"]