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.

نافذة طرفية تعرض مخرجات إصدار Docker وصورة collabora/code الرسمية التي يتم سحبها.
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:

docker --version
docker pull collabora/code:latest

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.

docker run -t -d   --name collabora-code   -p 127.0.0.1:9980:9980   -e 'aliasgroup1=https://cloud.example.com:443'   --restart always   --cap-add MKNOD   collabora/code:latest

يمنع ربط 127.0.0.1المنفذ 9980 بالإنترنت مباشرةً عند تشغيل الخادم الوكيل العكسي على نفس الخادم. إذا كان الخادم الوكيل يعمل على جهاز آخر، فصمم قواعد الشبكة بحيث لا يتمكن من الوصول إلى CODE إلا الخادم الوكيل؛ لا تنشر المنفذ 9980 للجميع.

نافذة طرفية تعرض حاوية CODE التي تم تشغيلها على المنفذ 9980 على المضيف المحلي وتم إدراجها بواسطة الأمر docker ps.
قم بتشغيل الكود على 127.0.0.1:9980 عندما يقوم خادم وكيل عكسي على نفس المضيف بتوفير نقطة نهاية HTTPS العامة.

تأكد من أن الحاوية قيد التشغيل:

docker ps --filter name=collabora-code
docker logs --tail 50 collabora-code

الخطوة 3: ضع بروتوكول HTTPS وخادم وكيل عكسي أمام الكود

تُوثّق Nextcloud مسارات Collabora المطلوبة على النحو التالي /browser: /hosting/discovery، ، /hosting/capabilities، /cool/adminws، /cool، بالإضافة إلى حركة مرور WebSocket ضمن /cool/.../ws. ولهذا السبب، غالبًا ما ينتج عن تكوين "توجيه كل شيء باستثناء WebSockets" العام محرر يفتح جزئيًا ثم ينقطع الاتصال.

محرر التكوين يعرض مسارات الوكيل العكسي للمتصفح، واكتشاف الاستضافة، والقدرات، وcool، ومسارات WebSocket.
يجب أن يقوم خادم الوكيل العكسي الخاص بك بإعادة توجيه نقاط نهاية متصفح Collabora، والاكتشاف، والقدرات، و/cool، وWebSocket. يجب مطابقة بروتوكول المصدر مع وضع SSL لحاوية CODE الخاصة بك.

بالنسبة لـ Nginx، يحافظ المثال المختصر التالي على بروتوكول HTTPS الداخلي الافتراضي لـ CODE وينهي اتصال TLS العام عند Nginx. استخدم مسارات الشهادات الخاصة بك:

server {
    listen 443 ssl http2;
    server_name office.example.com;
    ssl_certificate /etc/letsencrypt/live/office.example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/office.example.com/privkey.pem;

    location ^~ /browser { proxy_pass https://127.0.0.1:9980; proxy_set_header Host $host; proxy_ssl_verify off; }
    location ^~ /hosting/discovery { proxy_pass https://127.0.0.1:9980; proxy_set_header Host $host; proxy_ssl_verify off; }
    location ^~ /hosting/capabilities { proxy_pass https://127.0.0.1:9980; proxy_set_header Host $host; proxy_ssl_verify off; }
    location ^~ /cool/adminws { proxy_pass https://127.0.0.1:9980; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "Upgrade"; proxy_set_header Host $host; proxy_ssl_verify off; }
    location ~ ^/cool/(.*)/ws$ { proxy_pass https://127.0.0.1:9980; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "Upgrade"; proxy_set_header Host $host; proxy_ssl_verify off; }
    location ^~ /cool { proxy_pass https://127.0.0.1:9980; proxy_set_header Host $host; proxy_ssl_verify off; }
}

هذا مثال توجيه مبسط عمدًا، وليس دليلًا شاملًا لأمان Nginx. إذا شغّلتَ CODE مع تعطيل TLS الداخلي، فسيصبح المصدر هو [المصدر] http://127.0.0.1:9980، ويجب تهيئة الحاوية بشكل متسق. لا تخلط بين هدف وكيل HTTP وحاوية CODE التي لا تزال تتوقع HTTPS.

الخطوة 4: التحقق من نقطة نهاية CODE العامة

قبل تعديل إعدادات Nextcloud، افتح هذا الرابط في متصفحك:

https://office.example.com/hosting/discovery
يعرض المتصفح استجابة XML لاكتشاف WOPI من موقع office.example.com الذي يستضيف عملية الاكتشاف.
يُعد الحصول على استجابة صحيحة من /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 في فئة Office والنصوص مع تمكين Nextcloud Office.
قم بتمكين تطبيق تكامل المكتب في Nextcloud قبل إدخال عنوان خادم CODE الخارجي.

إذا كان إصدار Nextcloud الخاص بك يستخدم تسميات مختلفة قليلاً، فاتبع أسماء المنتجات المعروضة في واجهة الإدارة الخاصة بك بدلاً من افتراض أن لقطة شاشة قديمة تطابق تمامًا.

الخطوة 6: توجيه Nextcloud إلى خادم CODE الخارجي

افتح إعدادات الإدارة ← Office . اختر خيار خادم Collabora/Office الخارجي وأدخل ما يلي:

https://office.example.com
شاشة إدارة Nextcloud Office مع حقل عنوان URL لخادم Collabora Online خارجي ومؤشر إمكانية الوصول الناجح.
يتم إدخال عنوان URL الخارجي لـ Collabora في صفحة إدارة Office بعد أن يصبح الوصول إلى الخادم الوكيل ممكنًا.

احفظ الإعدادات وانتظر حتى يُجري Nextcloud فحص الاتصال. يُوصي Nextcloud باستخدام نفس البروتوكول على كلا الطرفين، مع تفضيل HTTPS. يُشير نجاح الفحص إلى قدرة Nextcloud على الوصول إلى نقطة نهاية Collabora، ولكنه لا يضمن بالضرورة عمل جميع مسارات WebSocket وطلبات WOPI في المتصفح أثناء جلسة تحرير فعلية.

الخطوة 7: تقييد طلبات WOPI

بعد التأكد من نجاح الاتصال الأساسي، حسّن إعدادات WOPI. يُوصي دليل إعدادات Nextcloud الحالي بشدة بتقييد طلبات WOPI بعناوين IP الخاصة بخوادم Collabora التي يُتوقع منها طلب الملفات. في إعدادات الإدارة ← Office ، استخدم حقل "قائمة السماح لطلبات WOPI" إن وُجد.

صفحة إدارة Nextcloud Office التي تعرض عنوان URL لخادم Collabora، وحالة الاتصال الناجح، وحقل قائمة السماح لـ WOPI.
بعد نجاح الاتصال، راجع قائمة السماح لـ WOPI بحيث لا تتمكن إلا عناوين خادم Collabora المتوقعة من طلب الملفات.

يُعدّ هذا إجراءً أمنيًا هامًا لأنّ آلية WOPI هي الطريقة التي تسترجع بها Collabora المستندات وتكتبها نيابةً عن مستخدمي Nextcloud. استخدم عناوين IP أو شبكات تُمثّل مسار خادم CODE الخاص بك كما هو مطلوب في بيئة النشر لديك؛ لا تقم بلصق اسم مضيف في حقل قائمة عناوين IP المسموح بها لمجرد تشابهه مع حقل عنوان URL للخادم. راجع إعدادات Collabora الخاصة بـ Nextcloud وإرشادات WOPI للاطلاع على الخيارات المتاحة.

الخطوة 8: افتح مستندًا حقيقيًا وقم بتأكيد الحفظ

أنشئ ملف ODT أو DOCX صغيرًا في Nextcloud، وافتحه، واكتب جملة، ثم أغلق المحرر، وأعد فتح الملف. هذا يتحقق من التسلسل الكامل: المتصفح ← اسم مضيف CODE العام ← الخادم الوكيل العكسي ← CODE ← طلب WOPI إلى Nextcloud ← حفظ الملف في وحدة التخزين.

محرر مستندات Collabora المستند إلى المتصفح مفتوح داخل 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 الصحيحة.

اترك تعليقاً

أفضل 10 أدوات مسح Ping للعثور على الأجهزة على شبكتك

أفضل 10 أدوات مسح Ping للعثور على الأجهزة على شبكتك

قارن بين 10 أدوات مسح الشبكة المحلية (Ping) لاكتشاف الشبكات المحلية بسرعة، وإجراء مسح شامل للأنظمة الأساسية المختلفة، وإدارة عناوين IP. تعرّف على ما يمكن أن يكشفه لك المسح وما لا يمكنه كشفه.

أفضل 6 أدوات لإدارة الشبكة لتتبع الأداء

أفضل 6 أدوات لإدارة الشبكة لتتبع الأداء

قارن بين ست أدوات لإدارة الشبكة لمراقبة الأداء، بما في ذلك تغطية SNMP، ورسم الخرائط، والتنبيهات، ونماذج النشر، والمفاضلات المتعلقة بالتكلفة.

أفضل برامج تحليل شبكة الواي فاي لأنظمة ويندوز، وiOS، وأندرويد

أفضل برامج تحليل شبكة الواي فاي لأنظمة ويندوز، وiOS، وأندرويد

قارن بين أفضل برامج تحليل شبكة Wi-Fi لأنظمة Windows و iPhone و Android، بما في ذلك أدوات ازدحام القنوات وتغطية الإشارة والخرائط الحرارية واستكشاف أخطاء الشبكة وإصلاحها.

مراقبة الاتصال: 7 أدوات مجانية ومفتوحة المصدر لمراقبة توافر الشبكة

مراقبة الاتصال: 7 أدوات مجانية ومفتوحة المصدر لمراقبة توافر الشبكة

قارن بين سبعة برامج مراقبة زمن الاستجابة المجانية والمفتوحة المصدر، بدءًا من مجموعات الشبكة الكاملة وحتى مجسات زمن الاستجابة المركزة، واختر البرنامج المناسب من حيث التوافر وفقدان الحزم والسجل.

جودة الخدمة في الشبكات: ما هي جودة الخدمة وكيف تعمل

جودة الخدمة في الشبكات: ما هي جودة الخدمة وكيف تعمل

تعرف على معنى جودة الخدمة في الشبكات، وكيف تحدد علامات DSCP وقوائم انتظار حركة المرور أولويات تطبيقات الصوت والفيديو والأعمال، وما لا تستطيع جودة الخدمة إصلاحه.

أفضل الممارسات لمراقبة الشبكات: ما الذي يجب تتبعه وما هي الأدوات التي يجب استخدامها

أفضل الممارسات لمراقبة الشبكات: ما الذي يجب تتبعه وما هي الأدوات التي يجب استخدامها

قم ببناء نظام مراقبة شبكة عملي مع تغطية واضحة للأجهزة، ومقاييس أداء مفيدة، وتنبيهات قابلة للتنفيذ، ومقارنة بين SolarWinds NPM وPRTG وOpManager.

أفضل برامج خادم SFTP لنقل الملفات بشكل آمن

أفضل برامج خادم SFTP لنقل الملفات بشكل آمن

قارن بين برامج خوادم SFTP الموثوقة لأنظمة ويندوز ولينكس، بما في ذلك OpenSSH وBitvise وSolarWinds وSFTPGo. اعثر على الخيار الأمثل الذي يلبي احتياجاتك الأمنية واحتياجات نقل الملفات.

أفضل 7 أدوات لإدارة عناوين IP لفرق الشبكات

أفضل 7 أدوات لإدارة عناوين IP لفرق الشبكات

قارن بين سبع أدوات لإدارة عناوين IP لاكتشاف الشبكات الفرعية، وتنسيق DNS وDHCP، وجرد الشبكة، وIPAM مفتوح المصدر.

أفضل 10 أدوات لفحص الشبكات لاكتشاف الأجهزة وعناوين IP

أفضل 10 أدوات لفحص الشبكات لاكتشاف الأجهزة وعناوين IP

قارن بين أدوات فحص الشبكة لاكتشاف الأجهزة بسرعة، وعمليات فحص IP عبر الأنظمة الأساسية، وإدارة عناوين IP للمؤسسات، مع إرشادات حول مطابقة كل خيار مع شبكتك.

كيفية استخدام Nmap لتتبع المسار وقراءة مسار الشبكة

كيفية استخدام Nmap لتتبع المسار وقراءة مسار الشبكة

استخدم خيار --traceroute في Nmap لرسم خرائط القفزات إلى مضيف مصرح به، وفهم مخرجات القفزة وRTT، واستكشاف الأخطاء وإصلاحها في الاستجابات المفقودة دون الإفراط في المسح.