m6011 commited on
Commit
1183af7
1 Parent(s): 18e5cc4

Create Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +50 -0
Dockerfile ADDED
@@ -0,0 +1,50 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # استخدم صورة Python الأساسية (يمكنك استخدام صورة تدعم GPU إذا كنت ستستخدم GPU)
2
+ FROM python:3.9
3
+
4
+ # تعيين متغيرات البيئة
5
+ ENV PYTHONDONTWRITEBYTECODE=1
6
+ ENV PYTHONUNBUFFERED=1
7
+
8
+ # تثبيت المتطلبات الأساسية للنظام
9
+ RUN apt-get update && apt-get install -y \
10
+ build-essential \
11
+ libsndfile1-dev \
12
+ ffmpeg \
13
+ wget \
14
+ git \
15
+ sox \
16
+ && apt-get clean
17
+
18
+ # تثبيت الاعتماديات الخاصة بـ ESPnet
19
+ RUN apt-get update && apt-get install -y \
20
+ libsndfile1 \
21
+ espeak-ng \
22
+ && apt-get clean
23
+
24
+ # تثبيت KenLM (إذا كنت بحاجة إليه)
25
+ RUN apt-get update && apt-get install -y libeigen3-dev zlib1g-dev libbz2-dev liblzma-dev && apt-get clean
26
+ RUN git clone https://github.com/kpu/kenlm.git /opt/kenlm && \
27
+ cd /opt/kenlm && \
28
+ mkdir build && \
29
+ cd build && \
30
+ cmake .. && \
31
+ make -j$(nproc) && \
32
+ make install
33
+
34
+ # تعيين دليل العمل داخل الحاوية
35
+ WORKDIR /app
36
+
37
+ # نسخ ملف المتطلبات
38
+ COPY requirements.txt .
39
+
40
+ # تثبيت المتطلبات باستخدام pip
41
+ RUN pip install --no-cache-dir -r requirements.txt
42
+
43
+ # نسخ باقي ملفات المشروع
44
+ COPY . .
45
+
46
+ # فتح المنفذ الذي يعمل عليه التطبيق
47
+ EXPOSE 7860
48
+
49
+ # الأمر الافتراضي لتشغيل التطبيق
50
+ CMD ["python", "app.py"]