AhmadA82 commited on
Commit
457ef9c
·
verified ·
1 Parent(s): 021f9c8
Files changed (1) hide show
  1. Dockerfile +11 -18
Dockerfile CHANGED
@@ -1,39 +1,32 @@
 
1
  FROM python:3.10-slim
2
 
3
- # تثبيت أدوات البناء اللازمة لمكتبة llama-cpp-python
4
  RUN apt-get update && apt-get install -y \
5
  build-essential \
6
  cmake \
7
  gcc \
8
  g++ \
9
- && rm -rf /var/lib/apt/lists/*
10
 
11
- # إنشاء مستخدم غير جذر
12
  RUN useradd -m -u 1000 user
13
 
14
- # تحديد مجلد العمل
15
  WORKDIR /home/user/app
16
 
17
- # نسخ الملفات مع ضبط الملكية
18
  COPY --chown=user . .
19
 
20
- # إنشاء مجلد الكاش وتعديل الصلاحيات
21
  RUN mkdir -p /home/user/app/data/cache && chown -R user:user /home/user/app/data/cache
22
- # التأكد من أن /tmp قابل للكتابة بواسطة المستخدم
 
23
  RUN chown -R user:user /tmp
24
 
25
- # تثبيت تبعيات Python
26
  RUN pip install --upgrade pip
27
  RUN pip install -r requirements.txt
28
 
29
- # التبديل إلى المستخدم غير الجذر
30
- USER user
31
-
32
- # إعداد متغيرات بيئة الكاش لهوغينغ فيس
33
- ENV HF_HOME=/home/user/app/data/cache
34
- ENV TRANSFORMERS_CACHE=/home/user/app/data/cache
35
-
36
- EXPOSE 7860
37
-
38
-
39
  CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "7860"]
 
1
+ # صورة بايثون خفيفة الحجم
2
  FROM python:3.10-slim
3
 
4
+ # تثبيت الأدوات الأساسية
5
  RUN apt-get update && apt-get install -y \
6
  build-essential \
7
  cmake \
8
  gcc \
9
  g++ \
10
+ && rm -rf /var/lib/apt/lists/*
11
 
12
+ # إنشاء مستخدم غير root لتجنب التحذيرات
13
  RUN useradd -m -u 1000 user
14
 
15
+ # مجلد العمل الافتراضي
16
  WORKDIR /home/user/app
17
 
18
+ # نسخ الملفات إلى الحاوية وتغيير الملكية
19
  COPY --chown=user . .
20
 
21
+ # إنشاء مجلد التخزين المؤقت للنموذج
22
  RUN mkdir -p /home/user/app/data/cache && chown -R user:user /home/user/app/data/cache
23
+
24
+ # تصحيح صلاحيات مجلد /tmp
25
  RUN chown -R user:user /tmp
26
 
27
+ # تحديث pip وتثبيت المتطلبات
28
  RUN pip install --upgrade pip
29
  RUN pip install -r requirements.txt
30
 
31
+ # تشغيل التطبيق باستخدام Uvicorn من ملف main.py
 
 
 
 
 
 
 
 
 
32
  CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "7860"]