File size: 798 Bytes
8af94b0 1bb750c 8af94b0 1bb750c 8af94b0 1bb750c 8af94b0 01c066b 8af94b0 1bb750c 8af94b0 01c066b | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | FROM python:3.11-slim
WORKDIR /app
RUN apt-get update && apt-get install -y --no-install-recommends \
build-essential \
&& rm -rf /var/lib/apt/lists/*
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
# app.py + ชุดข้อมูลตัวอย่างจริงของ ENT (ใช้โดย GET /api/sample)
COPY app.py sample_ent.json ./
EXPOSE 7860
# -w 2 : 2 worker — cache ผล backtest แยกกันคนละ worker (ยอมรับได้ เพราะ backtest ~1–3 วิ)
# -t 180 : rolling-origin backtest บน CPU ฟรีของ HF อาจใช้เวลาถึง ~30 วิ ในกรณีข้อมูลยาว
CMD ["gunicorn", "-b", "0.0.0.0:7860", "-w", "2", "-t", "180", "app:app"]
|