حاليًا، تمكنت بنجاح من بناء Discourse على جهاز الكمبيوتر المحلي، ويمكنني فتحه عبر localhost:3000. إنه رائع للغاية، بما في ذلك إنشاء المواضيع والنشر وما إلى ذلك.
لقد اتبعت في الغالب هذا الدليل هنا. إنه حقًا مذهل!
ومع ذلك، لا يمكنني فتحه عبر عنوان IP الداخلي الخاص بي (أي عنوان شبكة المنطقة المحلية). على سبيل المثال، 10.1.2.139. (شبه هذا النوع من عناوين IP) أريد فتح هذا المنتدى على أجهزة مختلفة. (أي الوصول إليه من جهاز الكمبيوتر المحمول الخاص بي.)
شكرًا لك على ردك!!
كنت أستخدم ctrl+c لإيقاف العملية في الطرفية، ثم أبدأها مرة أخرى باستخدام الأمر bundle exec rails server --binding=0.0.0.0، لكن يبدو أن الأمر لا يزال غير فعال.
أود أن أعرف الطريقة الصحيحة لإيقافه ثم تشغيله مجددًا؟ لأنني لاحظت أنه حتى بعد إغلاق الطرفية، ما زلت قادرًا على الوصول إلى المنتدى. علاوة على ذلك، لم أقم بالبناء عبر حاوية Docker، لذا لا أملك أداة launcher لاستخدام الأمر ./launcher stop app. كما جربت الأمر kill $(cat tmp/pids/server.pid) لكنه رد بـ cat: tmp/pids/server.pid No such file or directory.
هل أنت متأكد من ذلك؟ لقد وقعت في هذا الخطأ من قبل لأن متصفحي كان قد خبّأ تطبيق discourse وسمح لي بتصفح المواضيع حتى لو كانت عملية الخادم غير نشطة. قد ترغب في الاختبار باستخدام curl بدلاً من ذلك:
curl http://localhost:3000
يمكنك أيضًا التحقق مما إذا كانت هناك أي عمليات ruby تعمل:
ps -ef | grep ruby
يمكن لأداة netstat إخبارك بالعمليات التي تستمع على أي منافذ. على سبيل المثال، إذا قمت بتشغيل خادم ويب بايثون بسيط مثل هذا:
$ python3 -m http.server 8099
Serving HTTP on 0.0.0.0 port 8099 (http://0.0.0.0:8099/) ...
ثم قم بتشغيل netstat:
$ netstat -tlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:8099 0.0.0.0:* LISTEN 2511478/python3
...
هذا يخبرني أن المعرف 2511478 يستمع على المنفذ 8099 على جميع الواجهات (0.0.0.0 تعني “جميع الواجهات”). للحصول على معلومات أكثر قليلاً حول تلك العملية:
$ ps -fp 2511478
UID PID PPID C STIME TTY TIME CMD
simon 2511478 1250783 0 09:53 pts/11 00:00:00 python3 -m http.server 8099
شكرًا لك على معلوماتك! إنها مفيدة للغاية. بالإضافة إلى ذلك، لقد انتقلت بالفعل إلى docker-container بهذه الطريقة.
سأحاول المزيد على discourse. أنا متحمس جدًا لذلك.