حلّ المجتمع

مشاركة تطبيقات CasaOS عبر المنفذ 5000: غيّر منفذ المضيف، وليس منفذ الحاوية

A June 2024 CasaOS question about MusicBrainz, HandBrake, and other apps sharing port 5000; a later reply identified changing the host port while preserving the container port.

ثبّت أحد مستخدمي CasaOS عدة تطبيقات ويب كانت تتوقع منفذ الحاوية 5000. ولم يكن بالإمكان الوصول إلا إلى تطبيق واحد، لأن عدة حاويات كانت تحاول نشر المنفذ نفسه على مضيف Debian. أدى تغيير طرفَي التعيين إلى توقف بعض التطبيقات عن الاستجابة.

القاعدة العملية بسيطة: اترك منفذ التطبيق داخل الحاوية دون تغيير، ما لم تذكر وثائقه الخاصة أن منفذ الاستماع قابل للضبط. غيّر منفذ المضيف فقط.

اقرأ تعيينات منافذ Docker من اليسار إلى اليمين

5001:5000

في هذا التعيين، 5001 هو منفذ المضيف المستخدم في المتصفح، و5000 هو المنفذ الذي يستمع إليه التطبيق داخل الحاوية. يستخدم الدليل الرسمي لنشر المنافذ من Docker النموذج نفسه من المضيف إلى الحاوية.

عيّن تطبيقين يستخدمان المنفذ 5000 إلى منفذين مختلفين على المضيف

التطبيق منفذ المضيف منفذ الحاوية عنوان المتصفح
MusicBrainz 5001 5000 http://SERVER-IP:5001
HandBrake 5002 5000 http://SERVER-IP:5002

يجب أن يكون كل زوج من عنوان IP الخاص بالمضيف والمنفذ فريدًا. ومع ذلك، يمكن لعدة حاويات الاستماع على 5000 داخليًا، لأن مساحات أسماء الشبكة الخاصة بها معزولة.

لماذا يؤدي تغيير منفذ الحاوية غالبًا إلى تعطيل واجهة الويب؟

قد يبدأ أحد الصور خادم الويب الخاص به على منفذ داخلي ثابت. إذا عيّن CasaOS منفذ المضيف 5001 إلى منفذ الحاوية 5001 بينما تظل العملية تستمع على 5000، فسيعيد Docker توجيه حركة المرور إلى مقبس فارغ. وقد تبدو الحاوية سليمة، رغم أن المتصفح لا يتلقى أي استجابة.

لا تغيّر منفذ الحاوية إلا عندما يوفّر التطبيق الأصلي إعدادًا موثقًا أو متغير بيئة يغيّر منفذ الاستماع للعملية أيضًا.

عدّل الحقل الصحيح في CasaOS

  1. افتح إعدادات التطبيق أو إعداد التثبيت المخصص.
  2. ابحث عن إدخال المنفذ الذي يعرض قيمتَي المضيف والحاوية.
  3. اترك قيمة الحاوية على الإعداد الافتراضي للصورة.
  4. اختر منفذًا غير مستخدم على المضيف.
  5. احفظ التغييرات وأعد إنشاء الحاوية أو أعد تشغيلها عند مطالبتك بذلك.
  6. افتح التطبيق عبر منفذ المضيف الجديد.

تحقّق قبل تعيين منفذ جديد

تحقّق من قائمة تطبيقات CasaOS أو من إعدادات الحاويات لمعرفة التعيينات الحالية. ضع أيضًا في الحسبان الخدمات المثبتة مباشرةً على Debian، إذ يمكنها شغل منفذ المضيف نفسه من دون أن تظهر كتطبيق CasaOS. تجنّب تعيين منافذ البنية التحتية الشائعة مثل 22 أو 53 أو 80 أو 443 أو 445، ما لم تكن تفهم الخدمة الموجودة حاليًا.

تلغي شبكة المضيف هذه المرونة

في وضع شبكة المضيف، تشارك الحاوية مساحة أسماء الشبكة الخاصة بالمضيف، ولا يمكنها إعادة تعيين منفذ استماع مستخدم بالفعل بالطريقة المعتادة. وتؤكد وثائق شبكة المضيف من Docker أن خدمة واحدة فقط يمكنها ربط منفذ معين على المضيف.

الأسئلة الشائعة حول تعارض المنافذ في CasaOS

أي رقم ينبغي تغييره؟

غيّر منفذ المضيف، وهو الرقم الأول في HOST:CONTAINER.

هل يمكن لكل تطبيق استخدام منفذ الحاوية 5000؟

نعم، إذا كانت كل حاوية معزولة وكانت كل حاوية تنشر منفذ مضيف مختلفًا.

لماذا ثُبّت التطبيق لكنه لم يُفتح؟

قد يكون التعيين يشير إلى منفذ داخل الحاوية لا يستمع إليه التطبيق.