الرئيسية
» مكتب MS
»
كيفية تثبيت ONLYOFFICE Docs Enterprise باستخدام Docker Compose
كيفية تثبيت ONLYOFFICE Docs Enterprise باستخدام Docker Compose
يمكن تشغيل ONLYOFFICE Docs Enterprise باستخدام Docker Compose عبر Docker-DocumentServerالمستودع الرسمي. يكمن السر في البدء بملف Compose الخاص بالإصدار Enterprise، ثم إعداد وحدة تخزين دائمة، ورمز JWT ثابت، وملف الترخيص قبل تجهيز الخادم للإنتاج. يؤدي هذا إلى تثبيت Docs، خدمة التحرير عبر الإنترنت، وليس تثبيت بوابة ONLYOFFICE Workspace كاملةً.
تمت مراجعة الخطوات أدناه وفقًا لدليل OnLYOFFICE Enterprise Docker والمستودع الرسمي في 6 أكتوبر 2026. قد يتغير الفرع الافتراضي للمستودع، لذا بالنسبة للخادم طويل الأمد، تحقق من إصدار أو علامة معتمدة واحتفظ بهذا الإصدار مع ملاحظات النشر الخاصة بك.
تحقق من معالج المضيف وذاكرته ومساحة القرص وجاهزية Docker قبل بدء تشغيل صورة المؤسسة.
قائمة التحقق السريعة من المتطلبات
غرض
ما الذي يجب تحضيره؟
يستضيف
نظام التشغيل 64 بت amd64 Linux؛ يسرد ONLYOFFICE معالجًا ثنائي النواة بسرعة 2 جيجاهرتز أو أفضل، وذاكرة وصول عشوائي 4 جيجابايت أو أكثر، ومساحة قرص حرة 40 جيجابايت، وذاكرة تبديل 4 جيجابايت على الأقل، اعتمادًا على نظام التشغيل المضيف.
أدوات الحاويات
محرك Docker ومكوّن Docker Compose الإضافي لواجهة سطر الأوامر. أكّد عملية Compose باستخدام الأمر التالي docker compose version: .
استحقاق المؤسسة
ملف ترخيص مؤسسي صالح، license.licمن ONLYOFFICE، للحصول على النسخة المرخصة الكاملة.
شبكة
اسم مضيف لخدمة المستندات، وخطة لبروتوكول HTTPS، والوصول الوارد المحدود بالمنافذ التي يحتاجها النشر الخاص بك.
يُدرج دليل ONLYOFFICE الحالي للمؤسسات متطلبات الاستضافة هذه. تزداد احتياجات السعة مع ازدياد عدد المستخدمين المتزامنين، وتعقيد المستندات، وعمليات التكامل، لذا تعامل مع خط الأساس الذي يحدده المورّد كنقطة انطلاق وليس كضمانة للحجم.
1. قم بتثبيت Docker Compose واحصل على ملفات النشر الرسمية
إذا كان محرك Docker مثبتًا بالفعل على Debian أو Ubuntu من مستودع حزم Docker، فقم بتثبيت ملحق Compose باستخدام:
sudo apt-get update
sudo apt-get install docker-compose-plugin
docker compose version
بالنسبة لتوزيعات لينكس الأخرى، اتبع تعليمات تثبيت Docker الحالية لتلك التوزيعة. يستخدم الملحق الحالي الأمر المتباعد docker compose؛ أما الأمر المستقل الأقدم docker-composeفيُستخدم للتوافق مع الإصدارات السابقة، وهو ليس المسار الذي يستخدمه أمر Enterprise الخاص بـ ONLYOFFICE الموضح هنا.
استنسخ مستودع ONLYOFFICE وادخل إلى مجلده. إذا كانت سياسة إدارة التغييرات لديك تتطلب إصدارًا ثابتًا، فتحقق من علامة الإصدار المعتمدة بعد الاستنساخ وقبل تعديل الملفات.
git clone https://github.com/ONLYOFFICE/Docker-DocumentServer.git
cd Docker-DocumentServer
# Optional: select the approved release tag for your deployment
git checkout <release-tag>
تأكد من أن النسخة التي تم استخراجها تحتوي على docker-compose.enterprise.yml. لا تستبدل الملف docker-compose.yml، وهو ملف Compose الخاص بإصدار المجتمع في هذا المستودع.
استخدم ملف Enterprise Compose الموجود في مستودع Docker-DocumentServer الرسمي، وليس الملف الافتراضي لإصدار Community Edition.
2. تجهيز الأسرار، وتخزين البيانات، والترخيص
قبل التشغيل الأول، افحص الملف docker-compose.enterprise.yml. في الملف الرسمي الحالي، يستخدم التطبيق وخدمة PostgreSQL كلمة مرور قاعدة بيانات تجريبية، وسطور JWT معلّقة. استبدل كلمة مرور قاعدة البيانات التجريبية بقيمة قوية في كل من DB_PWDإعدادات التطبيق وPostgreSQL POSTGRES_PASSWORD. يجب أن تتطابق القيمتان. قم بإلغاء التعليق أو إضافة قيمة JWT JWT_ENABLED=trueطويلة وفريدة، ثم عيّنها JWT_SECRET. احتفظ بنفس سر JWT للتطبيق أو الموصل الذي سيتكامل مع Docs.
أنشئ كلمات مرور سرية بدلاً من إعادة استخدام كلمة مرور تسجيل الدخول. على سبيل المثال، شغّل الأمر openssl rand -hex 32وضع الناتج في ملف بيئة خاص، ثم أشر إليه من ملف Compose باستخدام `.compose.org` و` ${JWT_SECRET}. ${DB_PASSWORD}compose.org`. احمِ ملف البيئة من مستخدمي النظام الآخرين ولا تقم بإضافته إلى Git. يُمكنك فهم آلية إعداد المفاتيح من الناحية النظرية كما يلي:
# In a private .env file beside the Compose file
JWT_SECRET=replace_with_a_long_random_value
DB_PASSWORD=replace_with_a_different_long_random_value
قم بتحديث إدخالات كلمة مرور قاعدة البيانات بحيث تشير إلى ${DB_PASSWORD}، وقم بتعيين إدخالات بيئة الخادم إلى JWT_ENABLED=trueو JWT_SECRET=${JWT_SECRET}. يُعرّف ملف Compose الأصلي بالفعل خدمات PostgreSQL وRabbitMQ وRedis الداخلية؛ احتفظ بأسماء الخدمات والتبعيات ذات الصلة معًا إذا قمت بتخصيصه.
اجعل بيانات التطبيق المهمة دائمة على المضيف. في onlyoffice-documentserverالخدمة، استبدل إدخالات وحدة التخزين المجهولة /var/www/onlyoffice/Dataبوحدات /var/log/onlyofficeربط مثل:
احتفظ بإدخالات وحدات التخزين الأخرى ووحدة تخزين PostgreSQL المحددة في الملف الرسمي، إلا إذا كان لديك سبب مُثبت لتغييرها. أنشئ مجلدات المضيف وانسخ الترخيص الذي استلمته إلى مجلد البيانات المُثبَّت.
mkdir -p data logs
cp /secure/path/license.lic data/license.lic
تأكد من أن الحاوية قادرة على قراءة الترخيص والكتابة إلى مسارات البيانات والسجلات الخاصة بها. قد تختلف متطلبات ملكية الملفات باختلاف الصورة والمضيف؛ في حال ظهور أخطاء في الأذونات، تحقق من مستخدم الحاوية قيد التشغيل وتعليمات المستودع الرسمية بدلاً من تطبيق أذونات عامة. احتفظ بالترخيص والبيانات السرية بعيدًا عن جذر الويب العام ونظام التحكم في الإصدار.
راجع ملف Enterprise Compose قبل بدء التشغيل للتأكد من ضبط JWT وكلمة مرور قاعدة البيانات ووحدات التخزين بشكل مدروس.ضع ملف license.lic في دليل المضيف المثبت على /var/www/onlyoffice/Data بحيث يظل متاحًا للحاوية.
3. التحقق من صحة خدمات المؤسسة وبدء تشغيلها
من دليل المستودع، تحقق من صحة تكوين Compose، ثم قم بتشغيل حزمة Enterprise:
يتحقق الأمر الأول من قدرة Compose على تحليل الملف وحلّ متغيراته. يمكنه طباعة البيانات السرية التي تم حلّها، لذا يُنصح بتشغيله في نافذة طرفية خاصة وعدم لصق مخرجاته في سجلات عامة أو سلاسل دعم. أما الأمر الثاني، فيقوم بإنشاء أو تشغيل الخدمات الموصوفة في ملف Enterprise. يتضمن التعريف الرسمي خادم المستندات بالإضافة إلى تبعياته من PostgreSQL وRabbitMQ وRedis.
ابحث عن الحاويات التي لا تزال في حالة إعادة تشغيل أو حالة غير سليمة، أو حالات فشل مصادقة قاعدة البيانات، أو رسائل الترخيص المفقودة، أو أخطاء الأذونات. تُعدّ الخدمة التي تحمل علامة "قيد التشغيل" دليلاً مفيداً على أن عملية الحاوية الخاصة بها تعمل؛ ولكنها لا تُثبت وحدها أن تحرير المتصفح أو التكامل الخارجي يعمل.
استخدم اسم المضيف النهائي عبر HTTPS للعملاء وعمليات التكامل؛ عنوان المثال هو عنصر نائب لاسم DNS الخاص بك.بعد بدء تشغيل Compose، راجع حالة الخدمة الفعلية وحالة الصحة على المضيف الخاص بك.
4. ضع الخدمة خلف بروتوكول HTTPS وقيد الوصول إليها
في بيئة الإنتاج، وجّه اسم نطاق (DNS) مثلاً docs.example.comإلى الخادم، وفعّل بروتوكول HTTPS باستخدام طريقة الشهادة التي تستخدمها: إما خادم وكيل عكسي موثوق أو إعداد الشهادة الموثق من ONLYOFFICE. حدّث اسم المضيف النموذجي في الأوامر وإعدادات التكامل إلى اسمك الخاص. لا تُعرّض نقطة نهاية محرر HTTP عادية للإنترنت العام للاستخدام الروتيني.
ينشر ملف Enterprise Compose الرسمي المنفذين 80 و443 لخادم المستندات. تُعد قاعدة البيانات وخدمات Redis وRabbitMQ من التبعيات الداخلية، ويجب عدم كشفها للشبكة العامة. راجع جدار الحماية وأي مجموعة أمان سحابية للتأكد من وصول حركة المرور الواردة الضرورية فقط إلى المضيف. إذا كان هناك خادم وكيل عكسي آخر يستخدم المنفذين 80 و443، فغيّر تعيين منفذ Compose إلى منفذ مخصص للمضيف فقط أو منفذ غير مستخدم، وقم بتهيئة الخادم الوكيل لإعادة التوجيه إلى نقطة النهاية المحلية تلك؛ يجب أن يدعم الخادم الوكيل حركة مرور WebSocket المستخدمة في تحرير المستندات.
يحمي كل من HTTPS وJWT بيانات مختلفة. يقوم HTTPS بتشفير البيانات المتبادلة بين العملاء والخادم، بينما يتحقق JWT من صحة الطلبات المتبادلة بين Docs والمنصة المتصلة. لذا، يُنصح بإبقاء JWT مُفعّلاً وتكوين نفس السرّ في الموصل أو المنصة. لا تُعطّل JWT لمجرد اجتياز اختبار التكامل، بل قم بتصحيح عدم تطابق السرّ أو العنوان أو عنوان URL.
5. تحقق من الخدمة، ثم اختبر التكامل
يُعرّف ملف Compose الرسمي فحصًا لحالة الخدمة http://localhost:8000/info/info.jsonداخل حاوية خادم المستندات. تحقق من سلامة الخدمة باستخدام الأمر `document server.org`. docker compose ... psيمكنك أيضًا استخدام المتصفح لفتح اسم مضيف HTTPS العام. تشير صفحة الترحيب في Docs إلى استجابة خدمة الويب، لكنها لا تختبر ردود استدعاء المستندات من منصة التخزين الخاصة بك.
لإتمام عملية التحقق، قم بتوصيل منصة متوافقة باستخدام عنوان URL العام لـ Docs ونفس رمز JWT السري. افتح ملف DOCX تجريبيًا، وأجرِ تعديلًا بسيطًا عليه، ثم احفظه، وأعد فتحه من المنصة. هذا يُؤكد قدرة المنصة على الوصول إلى Docs وقدرة Docs على إعادة التغييرات المحفوظة إلى خدمة التخزين. إذا تم تحميل الصفحة ولكن لم يتم فتح المحرر، فافحص وحدة تحكم المتصفح، وإعدادات WebSocket للوكيل، واتفاقية JWT، وسجلات الخادم. احتفظ بالمستند التجريبي للاستخدام لمرة واحدة فقط، ولا تستخدم أي بيانات حساسة أثناء الإعداد الأولي.
يجب تحميل صفحة الوصول الخاصة بخادم المستندات على اسم المضيف المُكوّن قبل اختبار التحرير من خلال منصة متصلة.اختتم العملية باختبار حقيقي لحفظ وإعادة فتح الملفات من خلال المنصة التي ستخزن مستندات المستخدمين.
ملاحظات حول العمليات واستكشاف الأخطاء وإصلاحها
لم يتم اكتشاف الترخيص: تأكد من license.licوجوده في دليل المضيف الذي تم تركيبه بالفعل في /var/www/onlyoffice/Data، ثم تحقق من سجلات الحاوية.
أخطاء JWT: قارن بين سر الخادم وسر الموصل، والعنوان، وعنوان URL. حافظ على ثبات السر بعد إعادة التشغيل.
فشل بدء تشغيل قاعدة البيانات: تأكد من تطابق كلمة مرور قاعدة البيانات في كل من بيئة PostgreSQL وبيئة خادم المستندات.
تختفي البيانات بعد إعادة إنشائها: تأكد من أن ملف Enterprise Compose لا يزال يستخدم نقطة ربط البيانات الخاصة بك ويحتفظ بوحدة تخزين PostgreSQL المسماة. قم بعمل نسخة احتياطية من كليهما قبل التحديثات.
يفتح المحرر ولكن لا يمكن الحفظ: تحقق من إمكانية الوصول إلى عنوان URL الخاص بالمنصة من حاوية المستندات وأن الوكيل يمرر اتصالات WebSocket.
استخدم مسار التحديث الخاص بالمؤسسات وراجع ملاحظات الإصدار قبل تغيير إصدارات الصور. تجنب ذلك docker compose down -vإلا إذا كنت تنوي إزالة وحدات التخزين المُدارة بواسطة Compose؛ فقد يؤدي هذا الخيار إلى حذف وحدة تخزين بيانات PostgreSQL المُسماة. قم بعمل نسخة احتياطية من دليل البيانات، والسجلات إن لزم الأمر، وقاعدة البيانات قبل الترقية.