Arabic250 commited on
Commit
e9d71dc
·
verified ·
1 Parent(s): 30de5bd

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +15 -5
Dockerfile CHANGED
@@ -1,8 +1,9 @@
1
  FROM python:3.10-slim
2
 
 
3
  WORKDIR /app
4
 
5
- # 1. تحديث النظام وتثبيت أدوات البناء (gcc, g++, make) الضرورية لتجميع llama-cpp-python
6
  RUN apt-get update && apt-get install -y \
7
  build-essential \
8
  gcc \
@@ -10,10 +11,19 @@ RUN apt-get update && apt-get install -y \
10
  make \
11
  && rm -rf /var/lib/apt/lists/*
12
 
13
- # 2. تثبيت المكتبات الأساسية لعمل الواجهة وتشغيل النموذج
14
- RUN pip install --no-cache-dir fastapi uvicorn pydantic huggingface_hub llama-cpp-python
 
15
 
 
 
 
 
 
 
 
 
16
  COPY . .
17
 
18
- # 3. تشغيل خادم FastAPI على المنفذ المخصص لـ Hugging Face
19
- CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "7860"]
 
1
  FROM python:3.10-slim
2
 
3
+ # ضبط بيئة العمل
4
  WORKDIR /app
5
 
6
+ # تثبيت أدوات التجميع الضرورية
7
  RUN apt-get update && apt-get install -y \
8
  build-essential \
9
  gcc \
 
11
  make \
12
  && rm -rf /var/lib/apt/lists/*
13
 
14
+ # الخطوة الأهم: تثبيت llama-cpp-python مع تحديد عدد الوظائف لتجنب OOM
15
+ # قمنا بفصلها لضمان بناء الطبقات (Layers) بشكل صحيح
16
+ RUN MAX_JOBS=1 pip install --no-cache-dir llama-cpp-python
17
 
18
+ # تثبيت باقي المكتبات
19
+ RUN pip install --no-cache-dir \
20
+ fastapi \
21
+ uvicorn \
22
+ pydantic \
23
+ huggingface_hub
24
+
25
+ # نسخ ملفات المشروع (تأكد أن هذه الخطوة بعد تثبيت المكتبات لتسريع البناء مستقبلاً)
26
  COPY . .
27
 
28
+ # تشغيل التطبيق (افترضنا أن الملف الأساسي هو main.py والمنفذ 7860 الخاص بـ Spaces)
29
+ CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "7860"]