testing133 commited on
Commit
a3bc5ef
·
verified ·
1 Parent(s): 255b141

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +45 -15
Dockerfile CHANGED
@@ -1,27 +1,57 @@
1
- # استخدام صورة ديبيان خفيفة ومستقرة لبايثون
2
  FROM python:3.10-slim
3
 
4
- # ضبط متغيرات البيئة لمنع تأخير المخرجات
5
  ENV PYTHONUNBUFFERED=1
6
  ENV PYTHONDONTWRITEBYTECODE=1
 
7
 
8
- # إعداد مسار العمل الأساسي
9
- WORKDIR /app
 
 
10
 
11
- # تثبيت الحزمة الرسمية للمشروع بالإضافة إلى المكتبات الضرورية
12
- RUN pip install --no-cache-dir tgstorage-cluster python-multipart uvicorn
 
 
 
 
 
 
 
 
 
 
 
13
 
14
- # إنشاء ملف التوكنات (tokens.txt) وحقن توكن البوت الخاص بك
15
- RUN echo "8768634282:AAGyzWi9mFEtVFig_KsmXv9g2q7zJNr9xZA" > tokens.txt
 
 
 
16
 
17
- # إنشاء مجلد مخصص لحفظ قاعدة البيانات محلياً
18
- RUN mkdir -p /app/data && chmod 777 /app/data
19
 
20
- # فتح المنفذ الإجباري الخاص بمنصة Hugging Face
21
- EXPOSE 7860
 
 
22
 
23
  # ==========================================
24
- # التعديل الحاسم: تجاوز الإعداد الافتراضي
25
- # إجبار الخادم على العمل عبر المنفذ 7860
26
  # ==========================================
27
- CMD ["uvicorn", "tgstorage.api:api", "--host", "0.0.0.0", "--port", "7860"]
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # استخدام بيئة ديبيان الخفيفة الأساسية لبايثون
2
  FROM python:3.10-slim
3
 
4
+ # ضبط متغيرات البيئة لمنع التداخل وتأخير المخرجات
5
  ENV PYTHONUNBUFFERED=1
6
  ENV PYTHONDONTWRITEBYTECODE=1
7
+ ENV DEBIAN_FRONTEND=noninteractive
8
 
9
+ # ==========================================
10
+ # إعدادات النفق (Ngrok) مدمجة مباشرة
11
+ # ==========================================
12
+ ENV NGROK_AUTHTOKEN="3CV8McRnxXHXnhInfcOTLMNnYwK_5UvesXpqYSixN7rTHpSMM"
13
 
14
+ # ==========================================
15
+ # تثبيت سطح المكتب XFCE4، XRDP، SSH، ومدير العمليات
16
+ # ==========================================
17
+ RUN apt-get update && apt-get install -y \
18
+ supervisor \
19
+ openssh-server \
20
+ xfce4 \
21
+ xfce4-terminal \
22
+ xrdp \
23
+ curl \
24
+ wget \
25
+ sudo \
26
+ && rm -rf /var/lib/apt/lists/*
27
 
28
+ # إعداد الصلاحيات وتعيين كلمة المرور الجديدة التي طلبتها
29
+ RUN mkdir -p /var/run/sshd
30
+ RUN echo "root:pss990" | chpasswd
31
+ RUN sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config
32
+ RUN adduser xrdp ssl-cert
33
 
34
+ # إجبار XRDP على استخدام واجهة XFCE4 الخفيفة
35
+ RUN echo "xfce4-session" > /root/.xsession
36
 
37
+ # تثبيت أداة Ngrok لفتح النفق الخارجي
38
+ RUN curl -s https://ngrok-agent.s3.amazonaws.com/ngrok.asc | tee /etc/apt/trusted.gpg.d/ngrok.asc >/dev/null && \
39
+ echo "deb https://ngrok-agent.s3.amazonaws.com buster main" | tee /etc/apt/sources.list.d/ngrok.list && \
40
+ apt-get update && apt-get install -y ngrok
41
 
42
  # ==========================================
43
+ # إعداد مشروع تخزين تيليجرام (TGstorage)
 
44
  # ==========================================
45
+ WORKDIR /app
46
+ RUN pip install --no-cache-dir tgstorage-cluster python-multipart uvicorn
47
+ RUN echo "8768634282:AAGyzWi9mFEtVFig_KsmXv9g2q7zJNr9xZA" > tokens.txt
48
+ RUN mkdir -p /app/data && chmod 777 /app/data
49
+
50
+ # نسخ ملف إعدادات مدير العمليات
51
+ COPY supervisord.conf /etc/supervisor/conf.d/supervisord.conf
52
+
53
+ # فتح منفذ الويب الإجباري لمنصة Hugging Face
54
+ EXPOSE 7860
55
+
56
+ # تشغيل كافة الأنظمة عبر Supervisord
57
+ CMD ["/usr/bin/supervisord", "-c", "/etc/supervisor/conf.d/supervisord.conf"]