مثال توضيحي: تخيل فريقًا صغيرًا تُستضاف ملفات Nextcloud الخاصة به على خادم معين https://cloud.example.com. يرغب مدير الفريق في خادم Collabora Online Development Edition (CODE) منفصل على خادم آخر https://office.example.com. هذا مثال افتراضي لشرح الخطوات، وليس تقريرًا عن تثبيت حقيقي. استبدل اسمي المضيفين المذكورين في المثال بنطاقات تتحكم بها.
يعمل CODE كخدمة منفصلة بجانب Nextcloud. يقوم Docker بتشغيل خدمة Collabora، ثم يقوم خادم وكيل عكسي TLS بنشرها، ويربط تكامل Nextcloud Office بينهما. يجب أن يكون متصفحك قادرًا على الوصول إلى عنوان URL العام للمكتب، ويجب أن تكون الخوادم قادرة على الوصول إلى نقاط نهاية Nextcloud وCollabora ذات الصلة. يصف دليل تثبيت Nextcloud Office الحالي Docker كأحد خيارات النشر، ويشير إلى أن الخادم المخصص يحتاج عادةً إلى خادم وكيل عكسي.
قبل أن تبدأ
على سبيل المثال، افترض أن مضيف Linux يدعم تشغيل Docker، وأن Nextcloud يعمل بالفعل عبر HTTPS، وأن سجلات DNS لكلا اسمي المضيف تشير إلى الخوادم الصحيحة. احصل على شهادة TLS صالحة لـ office.example.com. خطط لعرض خدمة Collabora من خلال اسم المضيف هذا، بدلاً من فتح منفذ Docker الخاص بها مباشرةً على الإنترنت العام.
- تأكد من أن مضيف CODE يمكنه حل اسم النطاق والاتصال به
cloud.example.com.
- تأكد من أن المتصفحات يمكنها الوصول
https://office.example.comعبر بروتوكول HTTPS.
- اختر ما إذا كان الخادم الوكيل العكسي يعمل على مضيف Docker أو في مكان آخر. يمكن للخادم الوكيل على نفس المضيف استخدام منفذ حاوية منشور عبر حلقة وصل؛ أما الخادم الوكيل في حاوية أخرى فيحتاج إلى شبكة Docker مشتركة يمكن الوصول إليها أو مسار خاص آخر.
- قبل استخدام المنتج في بيئة الإنتاج، يُرجى مراجعة وثائق CODE وNextcloud الحالية للتأكد من التوافق ومتطلبات البروكسي. CODE هي نسخة التطوير؛ لذا يُنصح الفرق التي تحتاج إلى ضمان استقرار أو دعم من المورّد بتقييم عروض Collabora Online المدعومة.
تستخدم الأوامر أدناه collabora/codeاسم الصورة الرسمي ومصدر Nextcloud واحد. لا تُثبّت الأمثلة علامة إصدار، لذا ينبغي على المسؤول تحديد سياسة للتحكم في الإصدارات والتحديثات بدلاً من التعامل معها latestكاستراتيجية للتحكم في تغييرات بيئة الإنتاج.
1. قم بتوجيه اسم مضيف المكتب إلى خادمك
أنشئ سجل DNS من النوع A أو AAAA office.example.comيشير إلى المضيف أو موازن الأحمال الذي يخدم Collabora. اضبط الخادم الوكيل العكسي لإنهاء HTTPS بشهادة صالحة لهذا الاسم، وإعادة توجيه مسارات تطبيق Collabora وحركة مرور WebSocket إلى حاوية CODE. توفر وثائق Collabora الرسمية للخادم الوكيل العكسي أمثلة خاصة بكل خادم وكيل؛ استخدم القسم الخاص ببرنامج الخادم الوكيل لديك وإصدار CODE الحالي.
لا تنسخ جزءًا عامًا من إعدادات البروكسي دون تدقيق. يجب أن يدعم البروكسي ترقيات WebSocket، وأن يحتفظ بمعلومات المضيف والبروتوكول المُعاد توجيهه المطلوبة، وأن يمرر مسارات Collabora مثل /browser` <project> /hosting/discovery` و`<project>` و` /cool<project>`. تختلف التوجيهات الدقيقة بين Apache وNGINX وTraefik وغيرها من البوابات. إذا كان البروكسي يعمل على مضيف Docker، فإن إعادة التوجيه إلى `<project>` 127.0.0.1:9980هو هدف خاص شائع. أما إذا كان حاوية منفصلة، فإن عنوان الاسترجاع هذا يشير إلى حاوية البروكسي نفسها، وليس إلى مضيف CODE.
2. ابدأ تشغيل حاوية Code Docker
على مضيف Docker، اسحب الحاوية وشغّلها. في هذا المثال، تم ربط المنفذ بشبكة الاسترجاع، لذا فهو غير مكشوف مباشرةً على جميع واجهات الشبكة الخاصة بالمضيف.
docker pull collabora/code
docker run -d --name collabora -p 127.0.0.1:9980:9980 -e 'aliasgroup1=https://cloud.example.com:443' --restart always --cap-add MKNOD collabora/code
تُخوّل هذه aliasgroup1القيمة مصدر Nextcloud المتوقع استخدامه لخدمة CODE هذه. حافظ على توافق المخطط واسم المضيف مع عنوان URL الذي يستخدمه المستخدمون للوصول إلى Nextcloud؛ أضف منفذًا غير افتراضي إذا كانت خدمة Nextcloud العامة تستخدم منفذًا افتراضيًا. في حال استخدام عدة نسخ من Nextcloud للخدمة، قم بتكوين مجموعات المضيفين المسموح بها الإضافية وفقًا لوثائق صورة CODE الحالية بدلًا من السماح بشكل عام بمضيفين عشوائيين.
يفترض هذا الأمر أن الخادم الوكيل العكسي موجود على نفس الجهاز، ويُعيد توجيه الطلبات إلى منفذ الاسترجاع. إذا كنت تستخدم Docker Compose، أو خادمًا وكيلًا مُحاويًا، أو خادمًا وكيلًا عن بُعد، فاضبط إعدادات الشبكة وفتح المنافذ بعناية. تجنّب فتح المنفذ 9980 علنًا لمجرد تفعيل اتصال الخادم الوكيل؛ استخدم شبكة Docker خاصة، أو قاعدة جدار حماية، أو مسارًا مقيدًا آخر. للاطلاع على الخيارات الحالية لصورة CODE Docker، راجع دليل CODE Docker من Collabora .
3. قم بتهيئة الخادم الوكيل العكسي وتحقق من الكود
بعد إعداد الخادم الوكيل، أعد تحميله باستخدام الطريقة المناسبة لبرنامجك، وتحقق من إعداداته قبل تطبيق التغييرات. ثم اطلب نقطة نهاية الاكتشاف العامة من جهاز يمكنه الوصول إلى النطاق.
curl -fsS https://office.example.com/hosting/discovery | head
يجب أن تتضمن الاستجابة الناجحة معلومات اكتشاف XML بدلاً من صفحة خطأ الوكيل. يؤكد هذا الفحص وصول عنوان URL العام إلى نقطة نهاية Collabora؛ ولكنه لا يثبت بعدُ نجاح عملية تفويض Nextcloud أو WebSockets أو تحرير المستندات. في حال فشل نقطة النهاية، يُرجى أيضًا فحص الحاوية.
docker ps --filter name=collabora
docker logs --tail=100 collabora
في هذا السيناريو الافتراضي، يشير رفض الاتصال بعنوان URL العام أولاً إلى نظام أسماء النطاقات (DNS) أو بروتوكول أمان طبقة النقل (TLS) أو جدار الحماية أو توجيه الخادم الوكيل. عادةً ما تعني استجابة 502 أن الخادم الوكيل لا يستطيع الوصول إلى الخادم المُهيأ للحاوية. إذا نجح اكتشاف الخادم ولكن فشل المحرر لاحقًا أثناء التحميل، فتحقق من إعادة توجيه WebSocket وما إذا كان الخادم الوكيل يُبلغ عن خطأ في الترقية أو خطأ في الخادم الوكيل.
4. ربط Nextcloud بـ Collabora
في Nextcloud، افتح قسم التطبيقات وقم بتثبيت أو تفعيل تكامل Office المتاح لإصدارك. قد يكون اسم التطبيق "Nextcloud Office" أو "Collabora Online"، وذلك حسب الإصدار وقائمة التطبيقات المثبتة. ثم افتح إعدادات إدارة Office وأدخل ما يلي:
https://office.example.com
احفظ الإعدادات وراجع حالة الاتصال. تُشير وثائق تكوين Office الخاصة بـ Nextcloud إلى هذا الحقل باعتباره عنوان URL ومنفذ خادم Collabora، وتوصي باستخدام HTTPS. استخدم عنوان URL العام لـ Collabora الذي يمكن للمتصفحات الوصول إليه. في حالات تثبيت DNS المنفصل أو NAT أو الشبكات المجزأة، قد يحتاج Nextcloud أيضًا إلى مسار داخلي إلى تلك الخدمة؛ راجع خيارات الاتصال المتقدمة لإصدار التطبيق المُثبَّت لديك بدلاً من افتراض أن DNS العام يعمل من الخادم.
على سبيل المثال، يعتبر Nextcloud cloud.example.comعنوان خادم WOPI المسموح به، وتفتح متصفحات المستخدمين المحرر من هذا العنوان office.example.com. إذا كانت صفحة إدارة Nextcloud توفر قائمة بالسماح بطلبات WOPI، فقم بتقييدها بعناوين خوادم Collabora المتوقعة بعد التأكد من صحة العناوين في شبكتك. ينصح Nextcloud بتقييد طلبات WOPI على خوادم Collabora المتوقعة؛ ولا تُضف نطاقات واسعة دون سبب محدد متعلق بالشبكة.
5. اختبر باستخدام نموذج مستند
سجّل الدخول كمستخدم عادي في Nextcloud، أنشئ مستندًا نصيًا صغيرًا أو افتح ملف اختبار مؤقتًا، ثم اختر محرر المتصفح. تأكد من تحميل شريط أدوات المحرر، وأجرِ تغييرًا بسيطًا، وانتظر حتى يظهر مؤشر الحفظ، ثم أغلق الملف وأعد فتحه للتحقق من حفظ التغيير. إذا كان التثبيت يدعم التحرير المتزامن، فافتح ملف الاختبار نفسه في جلسة مستخدم ثانية وتأكد من تحديث حالة الملفات أو التعديلات كما هو متوقع.
تفصل هذه الفحوصات الطبقات الرئيسية: يختبر طلب الاكتشاف التوجيه العام؛ ويختبر حالة Nextcloud اتصال الخادم المُهيأ؛ ويختبر فتح المحرر الوصول عبر المتصفح وتبادل WOPI؛ ويختبر إعادة فتح الملف مسار الحفظ. لا تستخدم مستندًا مهمًا للاختبار الأول. CODE هي نسخة تطويرية، لذا فإن نجاح الاختبار لا يغني عن تقييم التوافر وسعة الموارد والنسخ الاحتياطية واحتياجات الدعم لمؤسستك.
المشاكل الشائعة وما يجب فحصه
أفاد Nextcloud بأن الخادم غير قابل للوصول
تحقق من عنوان URL الخاص بـ Office للتأكد من خلوه من الأخطاء الإملائية، ومن صحة سلسلة الشهادات، وتطابق بروتوكول HTTPS. اختبر عنوان URL الخاص بالاكتشاف من كلٍّ من المتصفح ومضيف Nextcloud. إذا كان نظام أسماء النطاقات العام (DNS) يعمل بشكل مختلف داخل شبكة الخادم، فقم بتكوين مسار داخلي مناسب أو استخدم إعدادات عنوان URL المتقدمة للخادم التي يدعمها الموصل الخاص بك.
تُفتح الصفحة، لكن محرر المستندات يتوقف عن العمل.
افحص سجلات الوصول والأخطاء الخاصة بالخادم الوكيل العكسي بحثًا عن حالات فشل ترقية WebSocket. تأكد من أن الخادم الوكيل يُعيد توجيه مسارات Collabora الحالية ويُبقي اتصالات WebSocket طويلة الأمد مفتوحة. يمكن لأدوات مطوري المتصفح إظهار ما إذا كان طلب WebSocket مرفوضًا، أو مُعاد توجيهه إلى HTTP، أو محظورًا بسبب خطأ في الشهادة.
رفضت شركة Collabora استضافة Nextcloud
قارن مصدر Nextcloud الفعلي، بما في ذلك البروتوكول واسم المضيف والمنفذ، مع مجموعة الأسماء المستعارة المُكوّنة. قد يؤدي عدم التطابق بين عنوان URL عام واسم مضيف داخلي وإعادة كتابة الوكيل إلى فشل مصادقة المضيف أو فشل WOPI. أضف اسم مضيف Nextcloud المقصود فقط إلى التكوين المسموح به.
يبدأ البرنامج ثم يتوقف أو يصبح غير سليم.
راجع docker logs collaboraمساحة القرص والذاكرة المتاحة، وأذونات الحاوية، ومتطلبات التشغيل لعلامة الصورة التي قمت بنشرها. تجنب نسخ علامات مثل وضع الامتيازات من أمثلة غير ذات صلة إلا إذا كانت التعليمات الرسمية الحالية لبيئتك تتطلب ذلك.
التحديثات والرعاية التشغيلية
حافظ على تحديث صورة الحاوية لضمان الأمان والتوافق، ولكن جدوِل التحديثات واختبرها بدلاً من سحب صورة جديدة غير مُراجعة خلال ساعات العمل. سجّل الإصدار الذي تستخدمه، واقرأ ملاحظات الإصدار ذات الصلة، واحتفظ بنسخة احتياطية. راجع إعدادات الوكيل بعد التغييرات الرئيسية في Collabora أو Nextcloud لأن متطلبات نقاط النهاية وWebSocket قد تتغير. راقب أيضًا ذاكرة المضيف ووحدة المعالجة المركزية والتخزين وسجلات الحاوية مع ازدياد عدد المحررين النشطين.
بالنسبة للفريق الافتراضي، يكون التثبيت جاهزًا للاستخدام المحدود فقط بعد استجابة نقطة اكتشاف البيانات، وإبلاغ Nextcloud عن وجود اتصال، وفتح المستند التجريبي في متصفح، وبقاء التعديل المحفوظ بعد إعادة فتحه. في حال فشل أحد هذه الاختبارات، يجب استكشاف أخطاء تلك الطبقة وإصلاحها قبل دعوة المستخدمين للاعتماد على الخدمة.
المراجع الرسمية
تمت مراجعة الوثائق في 6 أكتوبر 2026. تم تصنيف دليل Nextcloud الثابت على أنه الإصدار 35 عند التحقق منه؛ أما دليل Docker المرفق فهو الإصدار 28، لذا استخدمه كمثال للتثبيت وتحقق من بناء جملة الوكيل مقابل دليل Collabora والإصدارات التي تقوم بتشغيلها بالفعل.