# 1. استخدام نسخة Node.js 22 الرسمية FROM node:22-slim # 2. تثبيت الأدوات الأساسية والـ git RUN apt-get update && apt-get install -y \ git \ python3 \ build-essential \ && rm -rf /var/lib/apt/lists/* # 3. تثبيت pnpm عالمياً لأن المشروع يعتمد عليه أساسياً في البناء RUN npm install -g pnpm # 4. تحديد مجلد العمل WORKDIR /app # 5. جلب سورس كود المشروع من GitHub RUN git clone https://github.com/OpenClaw/OpenClaw.git . # 6. تثبيت الحزم باستخدام pnpm بدلاً من npm RUN pnpm install # 7. بناء ملفات التشغيل (إنشاء مجلد dist/entry) # هنا نقوم بتشغيل البناء الفعلي والتأكد من نجاحه RUN pnpm build # 8. إعداد بيئة ومنافذ Hugging Face ENV PORT=7860 EXPOSE 7860 # إعطاء صلاحيات كاملة للمجلد لتجنب مشاكل الـ Permission في Hugging Face RUN mkdir -p /app/data && chmod -R 777 /app # 9. أمر التشغيل باستخدام pnpm لضمان استدعاء الـ entry script بشكل صحيح CMD ["pnpm", "start"]