الرئيسية
» مسؤول الشبكة
»
How to Set Up Nextcloud Office with CODE Docker in 10 Minutes
How to Set Up Nextcloud Office with CODE Docker in 10 Minutes
Current note for 2026: Nextcloud 35 documentation now separates Nextcloud Office, which is powered by Euro-Office, from Collabora Online, which remains a supported alternative and can still be self-hosted with the official CODE Docker image. This guide uses that external Collabora/CODE path. The naming matters because older guides often describe CODE as if it were the only server behind “Nextcloud Office.” See the current Nextcloud Office overview before applying instructions written for older releases.
If your Nextcloud site already works over HTTPS, Docker is installed, and you have a DNS name such as office.example.com ready for Collabora, the integration itself can be completed in about 10 minutes. DNS propagation, certificate issuance, firewall changes, or troubleshooting a reverse proxy can take longer and are not included in that estimate.
What you need before starting
The fast path assumes one existing Nextcloud instance, one Linux host that can run Docker, and a dedicated HTTPS hostname for CODE. Nextcloud's current Docker example recommends a separate subdomain and a valid TLS certificate. CODE listens on port 9980 internally, while a reverse proxy exposes it securely to browsers and to Nextcloud.
A working Nextcloud server reachable at a URL such as https://cloud.example.com.
Docker Engine on the host that will run CODE.
A DNS record such as office.example.com pointing to your reverse proxy.
A valid HTTPS certificate for the office hostname.
Administrator access to Nextcloud and root or sudo access to the Docker host.
Nextcloud's current installation documentation says the built-in CODE server is easiest for personal or small-team use, but recommends a dedicated Collabora Online installation for better performance. The official collabora/code image on Docker Hub is the image used below.
Verify Docker first, then pull the official Collabora CODE image. The exact Docker version shown is illustrative; use a currently supported Docker release on your host.
Step 1: Pull the CODE Docker image
On the Docker host, confirm that Docker is available and pull the official image:
The latest tag is convenient for a short setup guide because Collabora publishes updates frequently. For a production environment, consider pinning a specific version that you have tested, then schedule deliberate upgrades instead of allowing an unexpected image change during a rebuild.
Step 2: Start CODE for your Nextcloud host
يستخدم مثال Nextcloud Docker الحالي aliasgroup1لتحديد مضيف Nextcloud المسموح له بالتكامل معه. استبدل اسم المضيف المذكور في المثال بعنوان URL الخاص بك على Nextcloud.
يمنع ربط 127.0.0.1المنفذ 9980 بالإنترنت مباشرةً عند تشغيل الخادم الوكيل العكسي على نفس الخادم. إذا كان الخادم الوكيل يعمل على جهاز آخر، فصمم قواعد الشبكة بحيث لا يتمكن من الوصول إلى CODE إلا الخادم الوكيل؛ لا تنشر المنفذ 9980 للجميع.
قم بتشغيل الكود على 127.0.0.1:9980 عندما يقوم خادم وكيل عكسي على نفس المضيف بتوفير نقطة نهاية HTTPS العامة.
الخطوة 3: ضع بروتوكول HTTPS وخادم وكيل عكسي أمام الكود
تُوثّق Nextcloud مسارات Collabora المطلوبة على النحو التالي /browser: /hosting/discovery، ، /hosting/capabilities، /cool/adminws، /cool، بالإضافة إلى حركة مرور WebSocket ضمن /cool/.../ws. ولهذا السبب، غالبًا ما ينتج عن تكوين "توجيه كل شيء باستثناء WebSockets" العام محرر يفتح جزئيًا ثم ينقطع الاتصال.
يجب أن يقوم خادم الوكيل العكسي الخاص بك بإعادة توجيه نقاط نهاية متصفح Collabora، والاكتشاف، والقدرات، و/cool، وWebSocket. يجب مطابقة بروتوكول المصدر مع وضع SSL لحاوية CODE الخاصة بك.
بالنسبة لـ Nginx، يحافظ المثال المختصر التالي على بروتوكول HTTPS الداخلي الافتراضي لـ CODE وينهي اتصال TLS العام عند Nginx. استخدم مسارات الشهادات الخاصة بك:
هذا مثال توجيه مبسط عمدًا، وليس دليلًا شاملًا لأمان Nginx. إذا شغّلتَ CODE مع تعطيل TLS الداخلي، فسيصبح المصدر هو [المصدر] http://127.0.0.1:9980، ويجب تهيئة الحاوية بشكل متسق. لا تخلط بين هدف وكيل HTTP وحاوية CODE التي لا تزال تتوقع HTTPS.
الخطوة 4: التحقق من نقطة نهاية CODE العامة
قبل تعديل إعدادات Nextcloud، افتح هذا الرابط في متصفحك:
https://office.example.com/hosting/discovery
يُعد الحصول على استجابة صحيحة من /hosting/discovery طريقة سريعة للتأكد من أن نقطة نهاية CODE العامة والوكيل العكسي يستجيبان.
يجب أن تتلقى ملف XML لاكتشاف WOPI بدلاً من خطأ في الخادم الوكيل، أو تحذير بشأن الشهادة، أو فشل الاتصال. يمكنك أيضاً إجراء الاختبار من سطر الأوامر.
curl -fsS https://office.example.com/hosting/discovery | head
إذا فشلت هذه الخطوة، فقم أولاً بإصلاح نظام أسماء النطاقات (DNS) أو بروتوكول أمان طبقة النقل (TLS) أو الخادم الوكيل أو الحاوية. إن ربط Nextcloud بنقطة نهاية معطلة يزيد من صعوبة استكشاف الأخطاء وإصلاحها.
الخطوة 5: تفعيل تكامل Nextcloud مع Office
سجّل الدخول إلى Nextcloud كمسؤول، وافتح التطبيقات ، ثم انتقل إلى Office والرسائل النصية ، وفعّل تطبيق تكامل Office المتاح لتثبيتك. لا يزال مثال Nextcloud Collabora Docker الحالي يوجه المسؤولين إلى تثبيت تطبيق "Nextcloud Office" ثم تهيئة الخادم الخارجي ضمن إعدادات إدارة Office، على الرغم من أن نظرة عامة على Nextcloud 35 تُميّز الآن بين منتجي Euro-Office وCollabora.
قم بتمكين تطبيق تكامل المكتب في Nextcloud قبل إدخال عنوان خادم CODE الخارجي.
إذا كان إصدار Nextcloud الخاص بك يستخدم تسميات مختلفة قليلاً، فاتبع أسماء المنتجات المعروضة في واجهة الإدارة الخاصة بك بدلاً من افتراض أن لقطة شاشة قديمة تطابق تمامًا.
الخطوة 6: توجيه Nextcloud إلى خادم CODE الخارجي
افتح إعدادات الإدارة ← Office . اختر خيار خادم Collabora/Office الخارجي وأدخل ما يلي:
https://office.example.com
يتم إدخال عنوان URL الخارجي لـ Collabora في صفحة إدارة Office بعد أن يصبح الوصول إلى الخادم الوكيل ممكنًا.
احفظ الإعدادات وانتظر حتى يُجري Nextcloud فحص الاتصال. يُوصي Nextcloud باستخدام نفس البروتوكول على كلا الطرفين، مع تفضيل HTTPS. يُشير نجاح الفحص إلى قدرة Nextcloud على الوصول إلى نقطة نهاية Collabora، ولكنه لا يضمن بالضرورة عمل جميع مسارات WebSocket وطلبات WOPI في المتصفح أثناء جلسة تحرير فعلية.
الخطوة 7: تقييد طلبات WOPI
بعد التأكد من نجاح الاتصال الأساسي، حسّن إعدادات WOPI. يُوصي دليل إعدادات Nextcloud الحالي بشدة بتقييد طلبات WOPI بعناوين IP الخاصة بخوادم Collabora التي يُتوقع منها طلب الملفات. في إعدادات الإدارة ← Office ، استخدم حقل "قائمة السماح لطلبات WOPI" إن وُجد.
بعد نجاح الاتصال، راجع قائمة السماح لـ WOPI بحيث لا تتمكن إلا عناوين خادم Collabora المتوقعة من طلب الملفات.
يُعدّ هذا إجراءً أمنيًا هامًا لأنّ آلية WOPI هي الطريقة التي تسترجع بها Collabora المستندات وتكتبها نيابةً عن مستخدمي Nextcloud. استخدم عناوين IP أو شبكات تُمثّل مسار خادم CODE الخاص بك كما هو مطلوب في بيئة النشر لديك؛ لا تقم بلصق اسم مضيف في حقل قائمة عناوين IP المسموح بها لمجرد تشابهه مع حقل عنوان URL للخادم. راجع إعدادات Collabora الخاصة بـ Nextcloud وإرشادات WOPI للاطلاع على الخيارات المتاحة.
الخطوة 8: افتح مستندًا حقيقيًا وقم بتأكيد الحفظ
أنشئ ملف ODT أو DOCX صغيرًا في Nextcloud، وافتحه، واكتب جملة، ثم أغلق المحرر، وأعد فتح الملف. هذا يتحقق من التسلسل الكامل: المتصفح ← اسم مضيف CODE العام ← الخادم الوكيل العكسي ← CODE ← طلب WOPI إلى Nextcloud ← حفظ الملف في وحدة التخزين.
الاختبار النهائي عملي: قم بإنشاء أو فتح مستند وتأكد من تحميل المحرر وقبول التغييرات وحفظها مرة أخرى في Nextcloud.
لا يُعتبر الإعداد مكتملاً بمجرد أن تُشير صفحة إعدادات Office إلى إمكانية الوصول إلى الخادم. النتيجة السليمة هي تحميل المحرر دون ظهور تحذير بشأن الاتصال، وإمكانية تعديل المستند، وحفظ التغييرات بعد إعادة فتحه. إذا تم تحميل واجهة المحرر ولكن انقطع الاتصال أثناء التحرير، فركز أولاً على /cool/.../wsمسار WebSocket. إذا تعذر على المحرر تحميل الملف نهائياً، فتحقق من سجلات CODE، وسجلات Nextcloud، وحل DNS بين الخادمين، وقواعد قائمة السماح لـ WOPI.
قائمة التحقق السريعة لحل المشكلات
الأعراض
التحقق الأول
يقول Nextcloud إن خادم المكتب غير قابل للوصول
افتح /hosting/discoveryعبر بروتوكول HTTPS من مضيف Nextcloud.
يحصل المتصفح على رمز الخطأ 502 أو 504
تأكد من أن الحاوية قيد التشغيل وأن الخادم الوكيل يمكنه الوصول إلى 127.0.0.1:9980.
يفتح المحرر، ثم ينقطع الاتصال
تحقق من رؤوس ترقية WebSocket والمسار /cool/(...)/ws.
خطأ في الشهادة
قم بإصلاح سلسلة الشهادات العامة وتأكد من أن عنوان URL المُكوّن يستخدم اسم المضيف الصحيح.
تم رفض الوصول إلى WOPI
راجع قائمة السماح لـ WOPI في Nextcloud وتكوين مضيف Nextcloud المسموح به في CODE.
يعمل على شبكة واحدة ولكنه لا يعمل على شبكة أخرى
تحقق من نظام أسماء النطاقات المنفصل، وقواعد جدار الحماية، وما إذا كان بإمكان كل من Nextcloud و CODE حل أسماء النطاقات العامة لبعضهما البعض.
حافظ على تحديث الكود دون تحويل التحديثات إلى مفاجآت.
تنشر Collabora تحديثات CODE بشكل متكرر. تعرض صفحة Docker Hub الرسمية الوسوم التي تتم صيانتها بانتظام، وتشير إرشادات ترقية Nextcloud إلى أنه يتم تحديث عمليات نشر Docker عن طريق سحب صورة أحدث وإعادة إنشاء الحاوية. بالنسبة للخادم المنزلي، latestيُعد التتبع أمرًا معقولًا. أما للاستخدام التجاري، فيُنصح بتثبيت وسم مُختبَر، وقراءة ملاحظات الإصدار، وإنشاء نسخة احتياطية من إعداداتك، ثم الترقية خلال فترة الصيانة.
ضع في اعتبارك أيضًا نطاق استخدام CODE. يصف Docker Hub إصدار CODE بأنه إصدار تطويري موجه للمستخدمين المنزليين، بينما تشير وثائق Nextcloud إلى خيارات المؤسسات المدعومة في عمليات النشر الأكبر أو التي تتطلب موثوقية عالية. يُعدّ إعداد Docker في غضون 10 دقائق مثاليًا للسحابة الشخصية أو المختبر أو فريق صغير، ولكنه لا يُغني عن تخطيط السعة أو المراقبة أو النسخ الاحتياطي أو دعم المؤسسات.
النتيجة النهائية
بمجرد تشغيل الحاوية، وتأكد من صحة توجيه HTTPS، /hosting/discoveryواستجابته، وربط تكامل Nextcloud بالخادم https://office.example.com، وتقييد WOPI، وفتح مستند حقيقي وحفظه، يكتمل التكامل. الأهم ليس عدد الأوامر، بل الحفاظ على اتساق مسار الشبكة. يجب أن يتمكن كل من Nextcloud وCODE والخادم الوكيل العكسي ومتصفحات المستخدمين من الوصول إلى أسماء مضيف HTTPS المتوقعة باستخدام مسارات WebSocket وWOPI الصحيحة.