Arabi32 commited on
Commit
bd63eef
·
verified ·
1 Parent(s): 61b7383

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +14 -13
Dockerfile CHANGED
@@ -1,7 +1,7 @@
1
- # استخدام نسخة كاملة من Python لضمان وجود أدوات البناء
2
  FROM python:3.10
3
 
4
- # 1. تحديث النظام وتثبيت المكتبات البرمجية الأساسية للصوت والبيئة
5
  RUN apt-get update && apt-get install -y --no-install-recommends \
6
  gcc \
7
  g++ \
@@ -9,7 +9,7 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
9
  ffmpeg \
10
  && rm -rf /var/lib/apt/lists/*
11
 
12
- # 2. إعداد مستخدم Hugging Face الافتراضي (ID 1000) لتجنب مشاكل الصلاحيات
13
  RUN useradd -m -u 1000 user
14
  USER user
15
  ENV HOME=/home/user \
@@ -20,28 +20,29 @@ ENV HOME=/home/user \
20
 
21
  WORKDIR $HOME/app
22
 
23
- # 3. تثبيت المكتبات البرمجية مباشرة (بدون ملف requirements.txt)
24
- # قمنا بدمج كافة المكتبات المطلوبة هنا لضمان تثبيتها في طبقة واحدة
25
- RUN pip install --no-cache-dir --upgrade pip && \
 
 
 
 
26
  pip install --no-cache-dir \
27
  coqui-tts \
28
  fastapi \
29
  uvicorn \
30
  python-multipart \
31
- torch \
32
  typing-extensions
33
 
34
- # 4. نسخ كود التطبيق (ملف app.py وأي ملفات أخرى بجانبه)
35
  COPY --chown=user . .
36
 
37
- # 5. تنزيل نموذج XTTS v2 وحفظه داخل الصورة (Image) لتسريع البدء لاحقاً
38
- # يتم التحميل هنا أثناء البناء ليكون جاهزاً فور تشغيل الـ Space
39
  RUN python -c "from TTS.api import TTS; TTS('tts_models/multilingual/multi-dataset/xtts_v2')"
40
 
41
- # 6. تجهيز مجلدات العمل لضمان صلاحيات الكتابة
42
  RUN mkdir -p voice_library outputs
43
 
44
- # 7. تشغيل السيرفر على المنفذ المخصص لـ Hugging Face
45
  EXPOSE 7860
46
-
47
  CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "7860"]
 
1
+ # استخدام نسخة كاملة من Python
2
  FROM python:3.10
3
 
4
+ # 1. تثبيت مكتبات النظام الضرورية (أضفت ffmpeg و libsndfile1 وهما حرجان لعمل XTTS)
5
  RUN apt-get update && apt-get install -y --no-install-recommends \
6
  gcc \
7
  g++ \
 
9
  ffmpeg \
10
  && rm -rf /var/lib/apt/lists/*
11
 
12
+ # 2. إعداد مستخدم Hugging Face (ID 1000)
13
  RUN useradd -m -u 1000 user
14
  USER user
15
  ENV HOME=/home/user \
 
20
 
21
  WORKDIR $HOME/app
22
 
23
+ # 3. تثبيت المكتبات بالترتيب الصحيح (تمت إضافة torchaudio و setuptools)
24
+ # ملاحظة: نثبت torch و torchaudio معاً لضمان توافق الإصدارات
25
+ RUN pip install --no-cache-dir --upgrade pip setuptools wheel && \
26
+ pip install --no-cache-dir \
27
+ torch \
28
+ torchaudio \
29
+ --index-url https://download.pytorch.org/whl/cpu && \
30
  pip install --no-cache-dir \
31
  coqui-tts \
32
  fastapi \
33
  uvicorn \
34
  python-multipart \
 
35
  typing-extensions
36
 
37
+ # 4. نسخ كود التطبيق (تأكد من وجود app.py في نفس المجلد)
38
  COPY --chown=user . .
39
 
40
+ # 5. تنزيل نموذج XTTS v2 (هذه الخطوة ستنجح الآن لوجود torchaudio)
 
41
  RUN python -c "from TTS.api import TTS; TTS('tts_models/multilingual/multi-dataset/xtts_v2')"
42
 
43
+ # 6. إعداد المجلدات
44
  RUN mkdir -p voice_library outputs
45
 
46
+ # 7. التشغيل
47
  EXPOSE 7860
 
48
  CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "7860"]