يقدم هذا الدليل إرشادات خطوة بخطوة لتحديث Discourse و حاوية Docker ونظام تشغيل Ubuntu يدويًا في الإعداد المستضاف ذاتيًا.
مستوى المستخدم المطلوب: مسؤول النظام
الوصول عبر SSH إلى الخادم.
إذا قمت باستضافة Discourse ذاتيًا، فستحتاج أحيانًا إلى إجراء تحديث يدوي عبر سطر الأوامر للحصول على أحدث إصدارات الأمان وأحدث المكتبات.
هذه التحديثات لا يتم التقاطها في admin/upgrade، ولهذا السبب ستحتاج أحيانًا إلى القيام بهذه الخطوات الإضافية:
تحديث Discourse
-
يجب تحديث Discourse نفسه حوالي مرتين في الشهر، عن طريق النقر فوق زر “التحديث إلى أحدث إصدار” في لوحة الإدارة الخاصة بك (
admin/upgrade). -
كل شهرين نوصي بتسجيل الدخول عبر SSH إلى خادم الويب الخاص بك (باستخدام putty أو عميل SSH المفضل لديك) وتشغيل الأوامر التالية، خاصة إذا لم تظهر صفحة الترقية أو واجهت أي مشاكل عند محاولة الترقية.
cd /var/discourse
./launcher rebuild app
تحديث صورة Docker ونظام تشغيل Ubuntu
بالنسبة لتحديثات Ubuntu، تأكد من تمكين التحديثات الأمنية التلقائية لنظام Ubuntu الخاص بك! الأمر هو:
dpkg-reconfigure -plow unattended-upgrades
ومع ذلك، يغطي هذا التحديثات الأمنية الحرجة فقط. بين الحين والآخر يجب أن تحصل على جميع تحديثات نظام التشغيل كما يلي:
apt-get update
apt-get dist-upgrade
سيؤدي هذا أيضًا إلى تحديث Docker عبر حزم docker-ce القياسية.
لتلخيص:
- تحديث Discourse مرتين شهريًا عبر مُحدِّث الويب
- تحديث الحاوية كل شهرين
- تحديث نظام التشغيل كل ستة أشهر
يمكنك مضاعفة هذه الأرقام ولا يزال الأمر آمنًا جدًا، على سبيل المثال، تحديث Discourse مرة واحدة شهريًا، والحاوية كل 4 أشهر، ونظام التشغيل مرة واحدة كل 12 شهرًا، وهكذا.
ولكنك حقًا، حقًا تريد تمكين التحديثات الأمنية التلقائية في Ubuntu، كما هو موضح أعلاه.
الأسئلة الشائعة
ما هو الوقت المناسب للتحديث؟
يعتمد الأمر فقط على الوقت المتاح لديك ومدى قربك من أحدث التقنيات التي تريدها. إذا كان لديك مكونات إضافية غير رسمية، فمن المستحسن للغاية استخدام موقع اختبار/مرحلي. إذا لم يكن لديك أي مكونات إضافية غير رسمية، فمن المحتمل أن تتمكن من الترقية على الفور، ولكن حتى في هذه الحالة، قد تتوقف بعض المكونات الإضافية عن العمل لبضعة أيام بينما يقوم الفريق بإصلاحها (هناك الكثير منها).
ما هي الممارسة الشائعة عند التحديث مع تثبيت العديد من المكونات الإضافية؟
إذا كان لديك العديد من المكونات الإضافية، فمن المستحسن بشدة الاختبار محليًا أو على خادم اختبار. خاصة إذا كان لديك مكونات إضافية غير رسمية، حيث يمكن أن يكون شيء ما قد تعطل. إذا وجدت أن شيئًا ما قد تعطل، فالمسألة هي: هل لديك وقت لإصلاحه؟ هل لدى مؤلف المكون الإضافي الأصلي وقت لإصلاحه؟ يمكن أن يستغرق أي منهما أسابيع. لذا بهذه الطريقة على الأقل، سيكون لديك موقع اختبار معطل وليس موقع إنتاج معطل.
مساحة القرص لدي منخفضة
إذا كانت مساحة القرص لديك منخفضة (تحقق باستخدام df) فحاول مسح الصور القديمة باستخدام:
./launcher cleanup
apt-get autoclean
apt-get autoremove
هل تحديث إصدار Ubuntu الفعلي للخادم مهم بما أن Discourse يعمل دائمًا في Docker؟
إنه أقل أهمية بكثير. ولكن يجب أن تكون على الأقل على إصدار LTS مدعوم حاليًا من Ubuntu server. مطلوب نظام تشغيل Linux 64 بت مع إصدار نواة حديث.
