الموقع معطل - التطبيق لن يبدأ، تعارض المنفذ 443؟

لدي Discourse مثبت على خادم افتراضي خاص يعمل بنظام Ubuntu 18.04 باتباع تعليمات التثبيت القياسية. لقد كان يعمل بشكل جيد لبضع سنوات، ولكن عندما دخلت إلى موقعي بعد ظهر اليوم، انتهت صلاحية شهادة TLS - وبما أنه يستخدم HSTS، فهذا يعني أنني كنت محظورًا تمامًا من الموقع. كان الأمر سهلاً بما فيه الكفاية، فكرت، سأقوم بتسجيل الدخول عبر SSH إلى الخادم، وتثبيت التحديثات (فقط للتأكد)، وتشغيل ./launcher rebuild app، وسيكون كل شيء على ما يرام.

لا، لم ينجح الأمر بهذه الطريقة؛ ظهرت لي صفحة “عذرًا”. لذلك قررت إعادة تشغيل النظام، والآن أحصل على صفحة 502 عندما أحاول تصفحه. لا يمكنني بدء app:

root@talk:/var/discourse# ./launcher start app
x86_64 arch detected.

starting up existing container
+ /usr/bin/docker start app
Error response from daemon: driver failed programming external connectivity on endpoint app (e5db356e19c947c3e1e20a337aea7ee4bdcfa9bc5f3eac485e76439f3ed3a0e9): Bind for 0.0.0.0:443 failed: port is already allocated
Error: failed to start containers: app

وبالفعل هناك شيء يستمع على المنفذ 443:

root@talk:/var/discourse# netstat -tulpn
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:80              0.0.0.0:*               LISTEN      906/docker-proxy    
tcp        0      0 127.0.0.53:53           0.0.0.0:*               LISTEN      427/systemd-resolve 
tcp        0      0 0.0.0.0:25              0.0.0.0:*               LISTEN      918/docker-proxy    
tcp        0      0 0.0.0.0:443             0.0.0.0:*               LISTEN      892/docker-proxy    
tcp6       0      0 :::9936                 :::*                    LISTEN      578/sshd            
udp        0      0 127.0.0.53:53           0.0.0.0:*                           427/systemd-resolve 

أخشى أنني في حيرة من أمري - ما الذي يجب أن أتحقق منه بعد ذلك؟

3 إعجابات

هل مضى وقت طويل منذ آخر عملية إعادة بناء لك؟ هل كانت هناك أي أخطاء؟ هل ذكر شيئًا عن ترقية postgres؟ ربما أعد البناء مرة أخرى.

إعجابَين (2)

يمكنك أيضًا التحقق مما إذا كان هناك حاوية Discourse أخرى قيد التشغيل، على سبيل المثال، استيراد. سيؤدي تشغيل الأمر التالي وإذا كانت هناك حاويات إضافية، فإن النظر إلى أعمدة الحالة والمنافذ سيجيب على ذلك:

docker container ls
إعجابَين (2)

لقد كنت أبقي الموقع محدثًا؛ أتذكر ترقية postgres قبل فترة وتعاملت معها حينها. لا أتذكر رؤية أي شيء عنها هذه المرة، ولكن من السهل بما يكفي إجراء إعادة بناء أخرى. ولكن أثناء القيام بذلك، رأيت:

… وبالفعل import قيد التشغيل. لذلك أوقفت ذلك، وبمجرد انتهاء إعادة البناء، عاد الموقع للعمل.

وتم تجديد شهادة Let’s Encrypt (يبدو أنه تم إصدار العديد منها اليوم، وهو أمر مزعج بعض الشيء)، لذا كل شيء عاد الآن. شكرًا على الاستجابة السريعة.

3 إعجابات

ثم تريد أن تفعل ذلك.

  ./launcher destroy import
3 إعجابات

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.