---
title: "تعذّر الوصول إلى حاوية Docker من Mac: المنافذ وعناوين IP · أدلة Kilobat"
url: "https://kilobat.app/ar/guides/docker-container-from-mac"
description: "اتصل من macOS بخدمة في Docker Desktop أو OrbStack: انشر المنفذ واستخدم localhost واعرف متى تعمل عناوين IP للحاويات."
---

المطورون

# تعذر الوصول إلى حاوية Docker من Mac

يشغّل Docker على Mac الحاويات في جهاز افتراضي يعمل بنظام Linux. للوصول إلى حاوية من macOS، انشر عادةً منفذًا إلى localhost.

ينطبق على: Docker Desktop وOrbStack على إصدارات macOS الحالية. · تاريخ التحقق: 29 أكتوبر 2026

## الأعراض

- يفشل `curl localhost:8080`، لكن الخدمة تعمل داخل الحاوية.
- لا يمكنك إرسال ping إلى عنوان IP للحاوية أو الاتصال به.
- لا تظهر واجهة `docker0` على Mac.
- تعمل الخدمة على Linux لكن ليس على Mac.

## الأسباب المحتملة

- **لم يُنشر المنفذ.** دون `-p`، لا يعيد Docker Desktop توجيه المنفذ إلى Mac.
- **عناوين IP للحاويات على Docker Desktop.** تقول وثائق Docker الخاصة بـ Docker Desktop إنه يتعذر الوصول إلى شبكة الجسر الخاصة به من المضيف.
- **تستمع الخدمة على 127.0.0.1 في الحاوية.** عندئذٍ لا يمكن الاتصال بها إلا من الحاوية نفسها.
- **زوج منافذ خاطئ.** في `-p 8080:80`، المنفذ 8080 هو منفذ Mac والمنفذ 80 هو منفذ الحاوية.

## كيفية التحقق

1. اعرض الحاويات قيد التشغيل ومنافذها المنشورة.

   ```
   docker ps
   ```

   المخرجات يعرض عمود PORTS أزواجًا مثل `0.0.0.0:8080->80/tcp`. عدم وجود زوج يعني أن المنفذ غير منشور.
2. اعرض المنافذ المنشورة لحاوية واحدة.

   ```
   docker port my-container
   ```
3. اختبر الخدمة من داخل الحاوية إذا كانت الصورة تتضمن wget. يعني الرد أن الخدمة تعمل.

   ```
   docker exec my-container wget -qO- http://localhost:80
   ```
4. اطّلع على العملية التي تستمع على المنفذ في Mac.

   ```
   lsof -nP -iTCP:8080 -sTCP:LISTEN
   ```

## كيفية الإصلاح

1. ابدأ الحاوية بمنفذ منشور. الرقم الأول هو المنفذ على Mac.

   ```
   docker run -d -p 8080:80 nginx
   ```
2. اتصل من Mac باستخدام localhost ومنفذ Mac.

   ```
   curl http://localhost:8080
   ```
3. اجعل الخدمة في الحاوية تستمع على 0.0.0.0 بدلًا من 127.0.0.1. راجع توثيقها لمعرفة الإعداد.
4. إذا كان منفذ Mac قيد الاستخدام، فاختر منفذ Mac آخر. راجع [المنفذ مستخدم بالفعل على Mac](https://kilobat.app/ar/guides/port-already-in-use).
5. مع OrbStack، يمكنك أيضًا استخدام عنوان IP للحاوية أو اسمها `container-name.orb.local`.

## باستخدام Kilobat

1. تعمل فحوصات Kilobat على Mac. استخدم `--context container` عندما تعمل الشيفرة التي تفشل داخل حاوية. ينتهي التقرير عندئذٍ بأمر لتشغيله هناك.

   ```
   kilobat why http://localhost:8080 --context container
   ```

## الأسئلة

**لماذا لا يمكنني إرسال ping إلى حاوية على Docker Desktop؟**

تقول وثائق Docker إن Docker Desktop لا يستطيع توجيه حركة البيانات من Mac إلى حاويات Linux. انشر منفذًا بدلًا من ذلك.

**هل يعمل OrbStack بطريقة مختلفة؟**

نعم. تقول وثائق OrbStack إنه يمكنك الاتصال بالحاويات من Mac باستخدام عنوان IP وأسماء `.orb.local`.

## المصادر

- [وثائق Docker: استكشاف إرشادات الشبكات على Docker Desktop](https://docs.docker.com/desktop/features/networking/networking-how-tos/)
- [وثائق Docker: الشبكات على Docker Desktop](https://docs.docker.com/desktop/features/networking/)
- [وثائق OrbStack: شبكات الحاويات](https://docs.orbstack.dev/docker/network)
- lsof(8)، صفحة دليل مثبّتة مع macOS 27.2

تم التحقق في 29 أكتوبر 2026.

## أدلة ذات صلة

- [لا تستطيع حاوية الوصول إلى localhost على Mac](https://kilobat.app/ar/guides/localhost-from-container): لكل حاوية مكدس شبكة خاص بها.
- [المنفذ قيد الاستخدام بالفعل على Mac](https://kilobat.app/ar/guides/port-already-in-use): يمكن لعملية واحدة فقط الاستماع على منفذ TCP وعنوان معينين.
- [اكتشف سبب تعذر اتصال موقع أو API](https://kilobat.app/ar/guides/recipes/why-cant-it-connect): عندما يعمل الإنترنت ويتعذر الوصول إلى عنوان واحد، يفحص Kilobat كل طبقة بالتتابع.
- [المنفذ 5000 أو 7000 قيد الاستخدام على Mac: مستقبل AirPlay](https://kilobat.app/ar/guides/airplay-receiver-port-5000): تدرج Apple منفذَي TCP 5000 و7000 لخدمة AirPlay.
