CarroMax / Dockerfile
ihhereanth's picture
Create Dockerfile
d7bd5ad verified
# ใช้ 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"]