File size: 968 Bytes
34a7653
 
c178a17
34a7653
 
 
 
 
 
c178a17
34a7653
 
c178a17
 
34a7653
c178a17
 
 
 
 
 
34a7653
 
c178a17
34a7653
c178a17
 
34a7653
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
FROM python:3.9

# إعداد الصلاحيات لمنصة Hugging Face
RUN useradd -m -u 1000 user
USER user
ENV PATH="/home/user/.local/bin:$PATH"

WORKDIR /app

# 1. نسخ وتثبيت المكتبات
COPY --chown=user requirements.txt /app/
RUN pip install --no-cache-dir --upgrade -r requirements.txt
# التأكد من وجود gdown لتحميل الملف
RUN pip install --no-cache-dir gdown

# 2. تحميل المودل وفك ضغطه وحذف الملف المضغوط لتوفير المساحة (كل هذا يحدث مرة واحدة وقت البناء)
RUN gdown --id "1MZHAeCaQAyyfi6b2Dh3V_JCdTe8fTVmP" -O /app/model.zip && \
    python -c "import zipfile; zipfile.ZipFile('/app/model.zip', 'r').extractall('/app/')" && \
    rm /app/model.zip

# 3. نسخ ملف api.py
COPY --chown=user . /app/

# 4. فتح المنفذ المطلوب
EXPOSE 7860

# 5. تشغيل الخادم
CMD ["uvicorn", "api:app", "--host", "0.0.0.0", "--port", "7860"]