# ใช้ Python 3.10 เวอร์ชันเบาหวิว FROM python:3.10-slim # สร้าง User ใหม่ชื่อ "user" (กฎของ Hugging Face Spaces) RUN useradd -m -u 1000 user USER user # ตั้งค่า Path และ Working Directory ENV HOME=/home/user \ PATH=/home/user/.local/bin:$PATH WORKDIR $HOME/app # ก๊อปปี้ไฟล์ทั้งหมดในโฟลเดอร์เรา (app.py, vectors_th_fasttext.pt, ฯลฯ) เข้าไปใน Docker COPY --chown=user . $HOME/app # อัปเกรด pip RUN pip install --no-cache-dir --upgrade pip # 🔥 ทริคลับระดับ Dev: สั่งลง PyTorch "เวอร์ชัน CPU" เท่านั้น เพื่อลดขนาดไฟล์จาก 2.5GB เหลือแค่ 200MB! RUN pip install --no-cache-dir torch --index-url https://download.pytorch.org/whl/cpu # ลง Library อื่นๆ จาก requirements.txt RUN pip install --no-cache-dir -r requirements.txt # เปิด Port 7860 ให้ Hugging Face มองเห็น EXPOSE 7860 # สั่งรันเซิร์ฟเวอร์ด้วย Gunicorn (เสถียรกว่าและรับคนพร้อมกันได้เยอะกว่าการรัน python app.py ตรงๆ) CMD ["gunicorn", "-b", "0.0.0.0:7860", "--workers", "2", "--threads", "4", "--timeout", "120", "app:app"]