انتقل إلى المقال

Kinoraالمتطلبات

المتطلبات

ما تحتاج إلى تثبيته قبل تشغيل حزمتك، باستخدام Docker أو من دونه.

لحزمة الحزمة الكاملة

ما تحتويه كل حزمة

الحزمةالتطبيقات في التنزيليعمل بمفرده
الحزمة الكاملةواجهة API ولوحة التحكمنعم، كلاهما معًا
لوحة التحكملوحة التحكمنعم، على بيانات تجريبية مدمجة إلى أن تربطها بواجهة API الخاصة بالقالب
الخادمAPIنعم، يقدّم واجهة API فقط

لا تتضمن حزمة التطبيق الواحد التطبيقَ الآخر. يمكن للوحة التحكم استخدام واجهة API تشغّلها بالفعل، لكن شيفرة واجهة API موجودة فقط في حزمتي Full Stack و Backend.

باستخدام Docker

  • Docker Desktop على macOS أو Windows، أو Docker Engine مع إضافة Compose على Linux. تبدأ الحزمة الكاملة بأمر docker compose واحد.
  • اتصال بالإنترنت للبناء الأول، الذي ينزّل الصور الأساسية والاعتماديات.
  • لا شيء آخر: يجلب Docker معه Node.js، وقاعدة البيانات ملف SQLite داخل وحدة تخزين Docker.

باستخدام Docker

  • Docker Desktop على macOS أو Windows، أو Docker Engine على Linux. لتطبيقك ملف Dockerfile خاص به؛ ولا حاجة إلى Compose.
  • اتصال بالإنترنت للبناء الأول، الذي ينزّل الصورة الأساسية والاعتماديات.

من دون Docker

  • Node.js 22.9 أو أحدث للوحة التحكم وللحزمة الكاملة: يستخدم yarn dev وyarn start في لوحة التحكم خيار Node --env-file-if-exists، الذي ظهر في الإصدار 22.9. أما واجهة API وحدها فتحتاج إلى Node.js 22 أو أحدث. وتعمل صور Docker أيضًا على Node.js 22.
  • Yarn 4، عبر Corepack. شغّل corepack enable مرة واحدة؛ يثبّت كل تطبيق الإصدار Yarn 4.8.1، لذا يختار yarn الإصدار الصحيح. إذا لم يكن في Node.js لديك Corepack، فثبّته أولًا بالأمر npm install -g corepack.
  • لا حاجة إلى حزم عامة.

قاعدة البيانات

لا حاجة إلى خادم قاعدة بيانات. تستخدم واجهة API قاعدة SQLite افتراضيًا، وينشئ yarn seed الملف لك؛ ويستخدم Docker قاعدة SQLite أيضًا. الانتقال إلى MySQL مدعوم بتغيير في الإعدادات، لا بتغيير في الكود.

المنافذ

يستمع كل تطبيق على منفذ محلي ثابت. تأكد من أن لا شيء آخر يستخدمها، أو انقل أحدها، مع Docker، بواسطة DASHBOARD_PORT أو API_PORT في ملف .env بجوار docker-compose.yml.

التطبيقالمنفذ
API8000
لوحة التحكم3030

المنفذ

تستمع لوحة التحكم على المنفذ 3030، أو على PORT من ملف .env الخاص بها. تأكد من أن لا شيء آخر يستخدمه.

المنفذ

تستمع واجهة API على المنفذ 8000، أو على PORT من ملف .env الخاص بها. تأكد من أن لا شيء آخر يستخدمه.

واجهة API للربط

لا يلزم شيء لتجربة لوحة التحكم: فهي تعمل على بياناتها التجريبية الخاصة. لاستخدام بيانات حقيقية، تحتاج إلى تشغيل واجهة API الخاصة بالقالب، وتضبط عنوانها في ملف .env الخاص بها. تُباع واجهة API كحزمة مستقلة.

الخدمات الاختيارية

لا يلزم أي من هذه لتشغيل Kinora محليًا. يُفعَّل كل منها بمفاتيحه في back-end/.env، والمفتاح المتروك بقيمته في .env.example يُعدّ غير مضبوط.

الخدمةمن دونها
Cloudflare R2 أو مخزن آخر متوافق مع S3تقدّم لوحة التحكم الصور التجريبية من مجلدها public/assets. رفع صورة شخصية جديدة أو صورة تقدم أو مرفق يُرجع 400 مع "File storage is not configured on this server".
مفتاح Google Gemini أو OpenAI أو DeepSeekتعرض صفحة المساعد الذكي «لا يوجد نموذج ذكاء اصطناعي متصل». كل الشاشات الأخرى تعمل.
مفتاح MCP_API_KEY خاص بكيُرفض كل طلب إلى POST /api/mcp، وهو المسار الذي يستخدمه وكيل البرمجة.

لا يوجد في القالب ناقل بريد ولا مزوّد دفع: لا يُرسَل أي بريد إلكتروني، وصفحتا نسيان كلمة المرور وإعادة تعيينها واجهتان فقط (لا يُرسَل أي رابط لإعادة التعيين)، وتعرض بطاقة الفوترة أرقامًا مزروعة.

توقفت عند خطوة؟

ابحث عن الحل قبل أن تبدأ من جديد.

حل المشكلات

تفضيلات ملفات تعريف الارتباط

نستخدم ملفات تعريف الارتباط لتعزيز تجربة التصفح الخاصة بك وتحليل حركة المرور على الموقع وتخصيص المحتوى. بالنقر على "قبول الكل"، فإنك توافق على استخدامنا لملفات تعريف الارتباط للتحليلات والإعلانات المخصصة.