مرحبًا، أنا جديد في كل هذه الأمور المتعلقة بالخوادم.
أرجو مساعدتي في تشغيل Discourse على آلة افتراضية (VM) أو حاوية (CL) في Proxmox.
أو هل توجد صورة جاهزة ومُهيأة مسبقًا يمكن استيرادها من مكان ما؟
شكرًا جزيلاً.
مرحبًا، أنا جديد في كل هذه الأمور المتعلقة بالخوادم.
أرجو مساعدتي في تشغيل Discourse على آلة افتراضية (VM) أو حاوية (CL) في Proxmox.
أو هل توجد صورة جاهزة ومُهيأة مسبقًا يمكن استيرادها من مكان ما؟
شكرًا جزيلاً.
قد يكون لدى @pfaffman إجراء تثبيت مدفوع يمكنه تنفيذه. إنه يستحق كل فلس.
شكرًا لك، أليكس!
أول شيء هو الاطلاع على التثبيت القياسي الرسمي لـ Discourse، ولكن بالنظر إلى ما هو Proxmox، أعتقد أن الإجابة هي “اسألهم.” ومع ذلك، إذا بحثت، يمكنك العثور على Trying to install Discourse in an Ubuntu VM on Proxmox
لست متأكدًا مما تعتقد أنه خاص بكونه على جهاز افتراضي Proxmox. قم بتثبيت Ubuntu 18 في جهاز افتراضي. اعرض المنافذ 80 و 443 على الإنترنت. اتبع وثائق Discourse المرتبطة أعلاه. ما الجزء الذي تحتاج إلى مساعدة فيه؟
أنا جديد تمامًا في شؤون الخوادم ولكنني أتعلم.
مثل الآن: → لا يوجد فرق أي نوع من الهيبرفايزر (hypervisor) أستخدمه. شكرًا لك.
في الدليل:
يجب أن يكون لديك وصول SSH (لدي وصول عبر عنوان IP محلي وبرنامج PuTTY) إلى
خادم Linux 64 بت يدعم Docker.
(هل يعني ذلك أنه لا يجب تثبيت Docker قبل بدء التثبيت؟)
هل يجب أن يكون جهازًا افتراضيًا (VM) أم أن حاوية (CT) ممكنة أيضًا؟
ما الذي توصي به؟
أي نظام Linux توصي به؟
أعتقد أن الباقي واضح في الدليل ولكن دعنا نرى.
يمكن تثبيته أو عدم تثبيته. إذا لم يكن مثبتًا، فستقوم سكريبت التثبيت بتثبيته تلقائيًا.
لست متأكدًا من أن Docker سيعمل بشكل صحيح داخل حاوية (CT) — حيث ستقوم بتشغيل حاوية داخل حاوية، وهو ما قد يسبب مشاكل. يُفضل استخدام نظام افتراضي (VM).
يذكر الدليل:
يعمل إصدار أحدث إصدار LTS مدعوم حاليًا من Ubuntu Server بشكل جيد كإعداد افتراضي
ما لم يكن لديك تحفظات على Ubuntu، أنصح باستخدامه (فهو ما أستخدمه لمواقع Discourse الخاصة بي). إصدار LTS الحالي هو 20.04. كانت مشاركتي السابقة تشير إلى “Ubuntu 18” لأنني أستخدمه (ولا يزال مدعومًا لمدة ثلاث سنوات أخرى، لذا لا أستعجل التغيير)، ولكن للتثبيت الجديد، من الأفضل استخدام الإصدار الحالي.
أعتقد أنك محق على الأرجح. ستحتاج أيضًا إلى تعطيل خدمة Let’s Encrypt المدمجة في تثبيت Discourse. أعرف أن هذا ممكن، لكنه ليس شيئًا دعت الحاجة إليه كثيرًا. لكنني متأكد من أن البحث هنا سيجد إرشادات حول ذلك.
لست متأكدًا مما إذا كان بإمكاني التعامل مع تغيير السكربت (يبدو أمرًا خطيرًا على المبتدئ).
ماذا لو قمت بتوجيه المنفذ 80 و443 مباشرة إلى الجهاز الافتراضي (VM) للتثبيت، ثم عند الانتهاء أعيد توجيههما إلى RevManager؟
أم أن المنفذ 80 فقط؟
أيضًا، أعتقد أنه قد يكون فكرة جيدة، خاصة في هذه الحالة، إذا كان لدى شخص ما شهادة بالفعل، أن يُطرح سؤال بسيط في السكربت: “هل تريد الحصول على شهادة؟ نعم/لا” (بصفتي مبتدئًا، لا أستطيع القول مدى تعقيد ذلك).
ما رأيك؟
هل سيكون ذلك مثاليًا؟
هذا ما ستضطر إلى فعله. لن يعمل إعداد Discourse مع إعدادك. لقد اخترت مسارًا صعبًا بلا شك. توجد أدلة تعليمية للتثبيت مع خوادم ويب أخرى.
أوصي بمحاولة تثبيت أبسط أولاً.
شكرًا لك
هل يمكنك من فضلك إخباري بكيفية تغيير النص البرمجي؟
سأحاول
يجب أن أتعلم هذه الأمور.
ماذا عن هذا الاقتراح؟
[quote=“Witzker, post:9, topic:173015”]
أعتقد أيضًا أنه قد يكون فكرة جيدة، خاصة في هذه الحالة، إذا كان لدى شخص ما شهادة بالفعل، أن يُطرح سؤال “هل ترغب في الحصول على شهادة؟ نعم/لا” ببساطة (وبصفتي مبتدئًا لا أستطيع القول كم هو معقد ذلك) داخل النص البرمجي.
ما رأيك؟
هل سيكون مثاليًا؟
[/quote] أو هل هذا سيكون مثاليًا!
سيكون ذلك فعالاً، وسيتيح إكمال التثبيت المبرمج دون مشاكل. المشكلة تكمن في أن تثبيت Discourse سيتوقع الآن إدارة شهادة TLS الخاصة به، وهو ما لن يتمكن من فعله بمجرد إيقاف تحويل المنفذ 80 و 443 إلى ذلك الجهاز الافتراضي. ما تحتاج إلى فعله هو إخبار Discourse بعدم محاولة الحصول على شهادة أو التعامل مع TLS على الإطلاق. وأعتقد (رغم أنني لم أختبر ذلك) أنه يمكنك القيام بذلك عن طريق وضع علامة تعليق على سطور web.ssl.template.yml و web.letsencrypt.ssl.template.yml في ملف app.yml. كما أن الرابط Run other websites on the same machine as Discourse يحتوي على معلومات ذات صلة، ويبدو أنه يتفق مع هذا الرأي.
لا يوجد سبب حقيقي للقيام بذلك، حيث إن الحصول على شهادة جديدة أمر تافه (إذا لم تكن تُعقِّد الأمور بشكل مفرط كما تفعل أنت). والحقيقة أن امتلاكك لشهادة موجودة بالفعل لا يهم حقاً. العامل المُعقِّد في الإعداد المقصود لديك ليس امتلاكك لشهادة موجودة، بل هو أن هذا الترتيب لن يسمح لـ Discourse بإدارة شهادته الخاصة.
شكرًا، سأجرب.
المعنى:
إعادة توجيه المنفذ 80 و443 من الراوتر إلى عنوان IP الخاص بالآلة الافتراضية (VM).
ثم يمكنني التثبيت باستخدام السكربت العادي.
عندما ينتهي التثبيت، هل أقوم بتعديل الملفات بعد ذلك؟
المتطلبات الأخرى
اسم المضيف (Hostname) لـ Discourse؟ [discourse.example.com]:
—> NoIp.domain.com من خدمة No-IP
عنوان البريد الإلكتروني لحسابات المسؤول؟ [me@example.com, you@example.com]:
—> هل يمكنني استخدام عنوان بريد إلكتروني من 1und1 (IONOS) هنا أيضًا؟
me@MY.Domain.com مختلف عن NoIp.domain.com؟
عنوان خادم SMTP؟ [smtp.example.com]: —> من IONOS
منفذ SMTP؟ [587]: —> من IONOS
اسم مستخدم SMTP؟ [user@example.com]: —> هو البريد الإلكتروني
كلمة مرور SMTP؟ [pa$word]: —> موافق
عنوان بريد إلكتروني لحساب Let’s Encrypt؟ (اضغط Enter لتخطي) [me@example.com]: بريد إلكتروني من حساب No-IP ولكن بدون كلمة مرور؟
لا، أعني تعديل الملف قبل تشغيل عملية التثبيت. كما ذُكر أعلاه، لن تتمكن من استخدام سكربت discourse-setup.
يمكنك استخدام أي عنوان بريد إلكتروني (أو عناوين) تريده، بغض النظر عن النطاق.
تأكد من أن الخادم يسمح بإرسال رسائل البريد الإلكتروني بالجملة، إذا كنت تنوي في أي وقت أن يكون هذا المنتدى عامًا.
لماذا قد يحتاج إلى كلمة مرور؟ الغرض الوحيد من هذا البريد هو إشعارك من قبل Let’s Encrypt بقرب انتهاء صلاحية الشهادة (وهو أمر لا ينبغي أن يحدث أبدًا في الواقع). لكن حاويتك (container) لا ينبغي أن تحصل على شهادة على الإطلاق.
شكرًا لك
أعتقد أنه يمكنني استخدام السكريبت بعد جمع جميع المعلومات
سأقوم بإعداد ملخص لتهيئتي التي سأقوم بإعدادها لاحقًا
أتطلع لرؤية تقدمك.
يجب أن يعمل هذا مع السكربت
بدلاً من VPS مستأجر - أستخدم آلة افتراضية في الشبكة
Domain.xx CNAME إلى Fritz!Domain
تقوم Fritz!Box بتحويل المنفذ 80 و 443 إلى عنوان IP الخاص بـ Reverse Manager
يقوم Reverse Manager بتحويل
Domain.xx من المنفذ 80 و 443 إلى عنوان IP الخاص بـ VM IP 2
لا توجد شهادات على Domain.xx
لدي فقط Ubuntu جديد على VM IP 2
كيف يمكنني الاختبار؟
ما رأيك؟