دليل النشر

دليل AnythingLLM 1.17 متعدد المستخدمين على خادم VPS

انشر على VPS Cloud ←

دليل عملي

دليل AnythingLLM 1.17 متعدد المستخدمين على خادم VPS

الذكاء الاصطناعي10 دقائق للقراءةعدد الخطوات: 10

يدعم ‎AnythingLLM‎ وضع متعدد المستخدمين منذ إصدارات عدة. يُعزّز ‎v1.17.0‎ (1 أكتوبر 2026) هذا النظام بدور ‎Manager‎ مخصص، ودياريزةٍ للاجتماعات بـ‎Nemotron 3‎ و‎Parakeet Redux‎، فوق دعم ‎Google Vertex AI‎ الأصيل الذي جاء في ‎v1.16.2‎ (22 سبتمبر 2026). للوكالة أو المطوّر الذي يدفع اشتراكًا في ‎ChatGPT Team‎ أو ‎Claude for Teams‎، تُكرّر هذه التوليفة ذلك النموذج بالاستضافة الذاتية: مساحات عمل معزولة لكل عميل، وRAG على مستنداتك الخاصة، دون إرسال أيّ بيانات إلى طرف ثالث. يتناول هذا الدليل إعداد ‎Docker Compose‎ العامل فعليًا، وإنشاء المستخدمين عبر واجهة المسؤول، والأخطاء الحقيقية التي ظهرت أثناء التنصيب.

المحتويات· ما الذي يُغيّره الإصدار ‎v1.17.0‎ لاستخدام الوكالات1/8
  1. 01ما الذي يُغيّره الإصدار ‎v1.17.0‎ لاستخدام الوكالات
  2. 02المتطلبات قبل البدء
  3. 03نشر ‎AnythingLLM v1.17.0‎ باستخدام ‎Docker Compose‎
  4. 04إدارة مساحات العمل والأدوار في الممارسة
  5. 05النسخ الاحتياطي واستعادة النسخة
  6. 06استكشاف الأخطاء: أخطاء حقيقية ظهرت أثناء التنصيب
  7. 07AnythingLLM مقارنةً ببدائل RAG ذاتية الاستضافة
  8. 08للذهاب أبعد في بنيتك التحتية للذكاء الاصطناعي

ما الذي يُغيّره الإصدار ‎v1.17.0‎ لاستخدام الوكالات

يدعم ‎AnythingLLM‎ وضع متعدد المستخدمين منذ إصدارات عدة. يُعدّل الإصدار ‎v1.17.0‎ (1 أكتوبر 2026) هذا النظام بإضافة دور ثالث — ‎Manager‎ — يمكنه إنشاء مساحات عمل ودعوة المستخدمين وإدارة المستندات دون الوصول إلى إعدادات النظام كمفاتيح ‎API‎ أو إعداد النموذج اللغوي. بالنسبة إلى وكالة، يتيح هذا الدور تفويض إدارة عميل ما إلى مدير مشروع دون الكشف عن البنية التحتية بأكملها. تعتمد دياريزة الاجتماعات الآن على ‎Nemotron 3‎ للتعرف على المتحدث وعلى ‎Parakeet Redux‎ للنسخ — نموذجان قابلان للتشغيل محليًا على ‎VPS‎ مزوّد بـ‎GPU‎، أو يمكن تفويضهما لـ‎API‎ من ‎Nvidia‎. كان ‎Google Vertex AI‎ متاحًا بالفعل منذ ‎v1.16.2‎ (22 سبتمبر 2026) بوصفه موفّر نماذج لغوية قابلًا للضبط مباشرةً من الواجهة، دون تعديل يدوي لملف الضبط. تجعل هذه الإضافات الأخيرة من توليفة ‎v1.16.2 + v1.17.0‎ الإعداد الأكثر اكتمالًا للاستخدام متعدد العملاء بشكل منظّم.

المتطلبات قبل البدء

  • ‎VPS‎ بذاكرة ‎RAM‎ لا تقل عن ‎4 غيغابايت‎ — ‎2 vCPU / 4 غيغابايت‎ لواجهات ‎API‎ السحابية، و‎4 vCPU / 8 غيغابايت‎ إن استخدمت نموذج تضمين محليًا أو ‎Parakeet Redux‎
  • ‎20 غيغابايت‎ من قرص ‎SSD‎ — تنمو متجهات ‎LanceDB‎ وذاكرة التخزين المؤقت للمستندات مع حجم المجموعة؛ اترك هامشًا
  • ‎Docker‎ و‎Docker Compose v2‎ — تحقق بـdocker compose version‎ (بدون واصلة)؛ الإصدار ‎v1‎ لا يدعم جميع فحوص الصحة
  • نطاق فرعي مخصص — مثل ‎chat.your-domain.com‎؛ لا يجب كشف المنفذ ‎3001‎ مباشرةً على الشبكة العامة
  • وكيل عكسي نشط — ‎Nginx‎ أو ‎Caddy‎ لـ‎TLS‎ عبر ‎Let's Encrypt‎ وحدود حجم الرفع
  • مفتاح ‎API‎ لنموذج لغوي — ‎OpenAI‎ أو ‎Anthropic‎ أو ‎Vertex AI‎ أو ‎Ollama‎ محلي يعمل بالفعل على ‎VPS‎
  • المنفذ ‎3001‎ حر — يستخدمه ‎AnythingLLM‎ افتراضيًا؛ تحقق بـss -tlnp | grep 3001‎ قبل التشغيل

نشر ‎AnythingLLM v1.17.0‎ باستخدام ‎Docker Compose‎

  1. إنشاء بنية المجلدات وضبط الصلاحيات

    تواصل عبر ‎SSH‎ وأنشئ مجلد العمل بـmkdir -p /opt/anythingllm/storage‎. يعمل ‎AnythingLLM‎ بالمعرّف ‎UID 1000‎ داخل الحاوية؛ دون تصحيح الصلاحيات يرفض الحجم الكتابة عند الإطلاق الأول. طبّق chown -R 1000:1000 /opt/anythingllm/storage‎. إن استخدمت chmod -R 777‎ فسيعمل لكنه يوسّع الوصول دون داعٍ — استخدم chown‎ المحدد.

  2. كتابة ملف docker-compose.yml

    أنشئ /opt/anythingllm/docker-compose.yml‎ بالمحتوى التالي. الخدمة اسمها anythingllm‎، الصورة mintplexlabs/anythingllm:latest‎، restart: unless-stopped‎. الأحجام: ./storage:/app/server/storage‎. المنافذ: 3001:3001‎ (أغلقه بالجدار الناري، يصله الوكيل العكسي فقط). متغيّرات البيئة في قسم env_file: ‎.env‎. الشبكة: أنشئ شبكة proxy‎ مشتركة مع وكيلك العكسي لتفادي كشف المنفذ ‎3001‎ على الواجهة العامة.

  3. كتابة ملف ‎.env

    أنشئ /opt/anythingllm/‎.env‎ بثلاثة متغيّرات على الأقل. JWT_SECRET‎: سلسلة عشوائية من ‎32‎ حرفًا على الأقل تُولَّد بـopenssl rand -hex 32‎ — لا تعدّلها أبدًا بعد الإطلاق الأول، وإلا تُبطَل جميع رموز الجلسات. STORAGE_DIR‎: /app/server/storage‎ (يجب أن يطابق مسار الحجم المستهدف). SERVER_PORT‎: 3001‎. أضف بعدها متغيّرات موفّر النموذج اللغوي، مثلًا LLM_PROVIDER=openai‎ وOPEN_AI_KEY=sk-...‎ لـ‎OpenAI‎، أو LLM_PROVIDER=gemini‎ وGEMINI_API_KEY=...‎ لـ‎Vertex AI‎ عبر محوّل ‎Gemini‎.

  4. تشغيل الحاوية والتحقق من السجلات

    من /opt/anythingllm‎، شغّل docker compose up -d‎. انتظر ‎30‎ ثانية ثم تحقق من استماع الخدمة بـdocker compose logs --tail=50‎. يجب أن ترى السطر Server started on port 3001‎. إن ظهر EACCES: permission denied, mkdir '/app/server/storage/...'‎ في السجل، فإن chown‎ في الخطوة الأولى لم يُطبَّق على المسار الصحيح — أعد الخطوة الأولى ثم docker compose restart‎.

  5. إعداد الوكيل العكسي والحصول على شهادة TLS

    مع ‎Nginx‎، أنشئ ‎vhost‎ يوجّه https://chat.your-domain.com‎ إلى http://127.0.0.1:3001‎. أضف client_max_body_size 100m‎ في كتلة server‎ للسماح برفع ملفات ‎PDF‎ كبيرة. اطلب الشهادة بـcertbot --nginx -d chat.your-domain.com‎. مع ‎Caddy‎، توجيه reverse_proxy localhost:3001‎ كافٍ، والـ‎TLS‎ تلقائي.

  6. إنشاء حساب المسؤول عند الدخول الأول

    افتح https://chat.your-domain.com‎ في متصفح. تطلب منك الواجهة إنشاء أول حساب مسؤول — هذا الحساب هو الوحيد الذي يمكنه تعديل مفاتيح ‎API‎ وموفّر النموذج اللغوي وإعدادات النظام. اختر كلمة مرور قوية؛ لا يوفّر ‎AnythingLLM‎ إعادة تعيين كلمة مرور بالبريد الإلكتروني في وضع الاستضافة الذاتية دون إعداد ‎SMTP‎ إضافي.

  7. تفعيل وضع متعدد المستخدمين ودعوة مستخدم ثانٍ

    في واجهة المسؤول، اذهب إلى ‎Settings → Security‎ → فعّل ‎Multi-user mode‎. يظهر زر ‎Invite User‎ في قائمة المستخدمين. أدخل البريد الإلكتروني، اختر الدور (‎Default‎ أو ‎Manager‎)، وانسخ رابط الدعوة المُولَّد. يمكن لدور ‎Manager‎ إدارة مساحات العمل والمستندات؛ دور ‎Default‎ يصل فقط إلى مساحات العمل المسنَدة إليه.

  8. إنشاء مساحة عمل معزولة وإسنادها لمستخدم

    من لوحة التحكم، انقر على ‎New Workspace‎ وسمّها (مثلًا ‎Client Dupont‎). اسحب ملفات ‎PDF‎ إلى مساحة العمل ثم انقر ‎Save & Embed‎ لبدء التحويل إلى متجهات. بعد اكتمال التضمين، اذهب إلى إعدادات مساحة العمل → ‎Manage Users‎ وأضف فقط المستخدمين المصرَّح لهم. المستخدمون غير المُسنَدين لن يروا هذه مساحة العمل.

  9. إعداد ‎Google Vertex AI‎ كموفّر نموذج لغوي

    في ‎Settings → LLM Provider‎، اختر ‎Google Gemini‎ (الذي يستخدم واجهة ‎Vertex AI API‎ عبر المحوّل الأصيل المتاح منذ ‎v1.16.2‎). أدخل مفتاح ‎Google API‎ الخاص بك (GEMINI_API_KEY‎) واختر النموذج. إن فضّلت مصادقة حساب خدمة ‎GCP‎، صدّر GOOGLE_APPLICATION_CREDENTIALS‎ إلى مسار ملف ‎JSON‎ في ‎.env‎ وأعد تشغيل الحاوية بـdocker compose restart‎.

  10. التحديث دون فقدان البيانات

    للترقية إلى نسخة أحدث، أوقف الحاوية بـdocker compose down‎، عدّل وسم الصورة في docker-compose.yml‎ (مثال: mintplexlabs/anythingllm:v1.17.0‎)، ثم docker compose pull && docker compose up -d‎. بياناتك في ./storage‎ المركّب كحجم: تنجو من التحديث. راجع السجلات بعد إعادة التشغيل للتأكد من عدم فشل أي ترحيل للمخطط.

ثبّت وسم نسخة محددة في docker-compose.yml‎ بدلًا من استخدام وسم latest‎. يُظهر لك الأمر docker image ls mintplexlabs/anythingllm‎ النسخة المنزَّلة حاليًا. بهذه الطريقة، لا يُطبَّق التحديث إلا عند قرارك، ويمكنك التراجع بتغيير الوسم وحده ثم تشغيل docker compose up -d‎ مجددًا.

إدارة مساحات العمل والأدوار في الممارسة

بعد تفعيل وضع متعدد المستخدمين، تكشف واجهة المسؤول عن ثلاث طرق عرض متمايزة: ‎Users‎ (قائمة الحسابات والأدوار وحالة النشاط)، و‎Workspaces‎ (القائمة الشاملة مع عدد المستندات والمحادثات)، و‎Invites‎ (روابط الدعوة المعلقة). بالنسبة لوكالة تدير عشرة عملاء، الممارسة المثلى هي إنشاء مساحة عمل لكل عميل، وإسناد مستخدم بدور ‎Manager‎ لكل عميل، وإبقاء المتعاونين بدور ‎Default‎ مع وصول مقيّد بمساحات العمل المعنية فقط. لا يمكن لدور ‎Manager‎ الاطلاع على مفاتيح ‎API‎ أو تغيير موفّر النموذج اللغوي: هذا العزل يمنع أي عميل من الاطلاع على إعدادات عميل آخر. تبقى المحادثات في مساحة العمل — لا تنتقل عند نقل مستند بين مساحات العمل. سمّ مساحات عملك بشكل صريح منذ البداية: إعادة تسمية مساحة العمل لا تُغيّر مسارات التخزين الداخلية.

النسخ الاحتياطي واستعادة النسخة

تتركّز حالة ‎AnythingLLM‎ بأكملها في حجم ./storage‎: قاعدة البيانات المتجهية ‎LanceDB‎، وبيانات وصف المستندات، وإعدادات النسخة، وسجل المحادثات. تتمثل عملية النسخ الاحتياطي في أرشفة هذا المجلد أثناء إيقاف الحاوية، أو استخدام rsync‎ إلى تخزين بعيد أثناء تشغيل الحاوية — تتحمّل ‎LanceDB‎ القراءات المتزامنة. للنسخ الاحتياطي التلقائي، أضف خدمة cron‎ في ‎compose‎ تُنفّذ tar -czf /backup/anythingllm-$(date +%Y%m%d).tar.gz /opt/anythingllm/storage‎. الاستعادة تسلك المسار العكسي: انسخ الأرشيف إلى ./storage‎ مع احترام صلاحيات 1000:1000‎، ثم docker compose up -d‎. يحتوي ‎.env‎ على JWT_SECRET‎: احتفظ بنسخة منه مشفّرة، فقدانه يُبطل جميع الجلسات النشطة وأي رموز ‎API‎.

استكشاف الأخطاء: أخطاء حقيقية ظهرت أثناء التنصيب

إليك الأخطاء الخمسة الأكثر توثيقًا عند نشر ‎AnythingLLM v1.17.0‎ على ‎VPS‎، مع الرسالة الدقيقة والإصلاح المُطبَّق. الخطأ الأول: EACCES: permission denied, mkdir '/app/server/storage/vector-cache'‎ عند تشغيل الحاوية. السبب: مجلد storage‎ مملوك لـ‎root‎ والحاوية تعمل بـ‎UID 1000‎. الإصلاح: chown -R 1000:1000 /opt/anythingllm/storage‎ ثم docker compose restart‎. الخطأ الثاني: address already in use :::3001‎ في السجلات. السبب: خدمة أخرى تشغل المنفذ. الإصلاح: ss -tlnp | grep 3001‎ لتحديد العملية، ثم إيقافها أو تغيير SERVER_PORT‎ في ‎.env‎. الخطأ الثالث: Invalid JWT secret — all sessions invalidated‎ بعد إعادة التشغيل. السبب: تغيير JWT_SECRET‎. الإصلاح: استعد القيمة الأصلية أو اطلب من المستخدمين إعادة تسجيل الدخول. الخطأ الرابع: رفع ‎PDF‎ محدود بـ‎1 ميغابايت‎ رغم الإعداد. السبب: client_max_body_size‎ معرّف في كتلة http‎ من ‎Nginx‎ لا في كتلة server‎ — الأكثر تخصيصًا يسود. تحقق بـnginx -T | grep client_max_body_size‎. الخطأ الخامس: لا يُعيد مساحة العمل أجوبةً من المصادر بعد التضمين. السبب: نموذج التضمين المستخدم عند الاستيعاب يختلف عن النموذج النشط. الإصلاح: احذف المستندات، عدّل نموذج التضمين في الإعدادات، ثم أعد الاستيعاب.

AnythingLLM مقارنةً ببدائل RAG ذاتية الاستضافة

مرّر الجدول أفقيًا

المعيار‎AnythingLLM v1.17.0‎‎Open WebUI‎‎LibreChat‎‎PrivateGPT‎
‎RAG‎ وثائقي مدمجنعم — ‎PDF‎، ‎Word‎، ‎URL‎، ‎Notion‎، ‎GitHub‎استيراد أساسي بدون خط أنابيب ‎RAG‎عبر ملحق ‎RAG‎ (ضبط يدوي)نعم — محسَّن للمستندات السرية
وضع متعدد المستخدمين‎Admin / Manager / Default‎ — مدعوم أصيلًا، دور ‎Manager‎ مُعدَّل في ‎v1.17.0‎إدارة مستخدمين أساسيةنعم بأدوار لكل محادثةلا — مستخدم واحد افتراضيًا
مساحات عمل معزولة لكل عميلنعم — عزل أصيل بحسب مساحة العمللا — محادثات مشتركةمحدود — لكل محادثة فقطلا
موفّرو ‎LLM‎ المدعومونأكثر من ‎20‎ (‎Ollama‎، ‎OpenAI‎، ‎Vertex AI‎، ‎Anthropic‎…)‎Ollama‎ + متوافق مع ‎OpenAI‎‎OpenAI‎، ‎Azure‎، ‎Anthropic‎، ‎Ollama‎…‎Ollama‎ والمتوافقون مع ‎OpenAI‎
دياريزة الاجتماعاتنعم — ‎Nemotron 3‎ + ‎Parakeet Redux‎ (‎v1.17.0‎)لالالا
الحد الأدنى من ‎RAM‎ (‎API‎ سحابية)~‎512 ميغابايت‎~‎256 ميغابايت‎~‎384 ميغابايت‎~‎512 ميغابايت‎
منشئ وكلاء ذكاء اصطناعي بدون كودنعملالالا
الرخصة‎MIT‎‎MIT‎‎MIT‎‎Apache 2.0‎

للذهاب أبعد في بنيتك التحتية للذكاء الاصطناعي

يغطّي ‎AnythingLLM v1.17.0‎ حالة الاستخدام متعدد العملاء على ‎VPS‎ واحد. إن تجاوز مجموعة متجهاتك عدة ملايين، فكّر في نقل قاعدة البيانات المتجهية إلى ‎Qdrant‎ في حاوية مجاورة — يدعم ذلك ‎AnythingLLM‎ بشكل أصيل من إعدادات النسخة. للفرق التي تريد مقارنة الواجهات قبل الاختيار، يفصّل مقال ‎Open WebUI‎ و‎LibreChat‎ و‎Dify‎ معايير الاختيار حسب ملف الاستخدام. إن كانت مستنداتك خاضعة لمتطلبات سرية صارمة، يشرح مقال ‎PrivateGPT‎ كيفية العمل في وضع محلي بالكامل دون أي اتصال صادر بالشبكة.

بيئة AnythingLLM جاهزة في دقائق

يُعدّ قالب ‎VPS‎ الخاص بـ‎AnythingLLM‎ في كتالوج ‎ServOrbit‎ بيئة ‎Docker‎ والأحجام والصلاحيات عند الإطلاق — تصل مباشرةً إلى خطوة إنشاء حساب المسؤول.

بحاجة إلى مساعدة؟

تصفّح مركز المساعدة والأسئلة الشائعة، أو تواصل مع فريقنا — معاودة اتصال أو WhatsApp أو بريد إلكتروني. الدعم بـالعربية والفرنسية والإنجليزية.

راسلنا على WhatsAppيُفتح في علامة تبويب جديدة