Docker Desktop على نظام ماك يقول "Docker Engine stopped"
كنت بصدد البدء في إضافة خاصية جديدة في موقع كرت بزنس ، لكن عندما حاولت فتح بيئة التطوير المحلية الخاصة بـ لارافيل سيل (Laravel Sail) ، لكن سيل يقول “دولار لا يعمل” (Docker is not running).
فتحت تطبيق دوكر ديسكتوب ووجدت رسالة تقول “دوكر توقف” بالإنجليزية (Docker Engine stopped).
رأيت أن هناك إشعارات كثيرة داخل دوكر ديسكتوب (Docker Desktop). هذه الإشعارات تقول “فشل تنزيل الإمتدادات والإضافات” وهذه الرسالة بالإنجليزية هي “failed to fetch extensions”.
أول توجه لي لحل هذه المشكلة هو إيقاف برنامج دوكر ديسكتوب (Docker Desktop) و دوكر (Docker) من خلال برنامج Activity Monitor ، ثم تشغيل برنامج دوكر ديسكتوب من جديد. بعد تنفيذ هذه الخطوات اشتغل دوكر بشكل صحيح.
خطوات إعادة تشغيل دوكر ديسكتوب 🔗
- افتح برنامج تصفح الملفات (Finder)
- افتح مجلد التطبيقات (Applications)
- افتح مجلد أدوات ماك أو إس المُسمَى Utilities
- ثم افتح برنامج Activity Monitor.app
- حدد برنامج Docker ثم اضغط على زر x الموجود في الدائرة في الأعلي لعمل غلق إجباري أو إيقاف إجباري له
- حدد أيضاً برنامج Docker Desktop ثم اعمل إيقاف إجباري له أو غلق إجباري له من خلال الضغط على زر x الموجود داخل دائرة في أعلى برنامج Activity Monitor.
- اغلق برنامج Activity Monitor
- افتح برنامج دوكر ديسكتوب (Docker Desktop) من قائمة البرامج
شاهد هذا الفيديو لي وأنا أطبق هذه الخطوات عندما واجهتني هذه المشكلة.
البدء من الصفر 🔗
إن لم يتم حل هذه المشكلة بالطريقة السابقة، دعونا نجرب طريقة أخرى.
في هذه الطريقة سنقوم بعمل إيقاف إجباري لـ دوكر (Docker) و دوكر ديسكتوب (Docker Desktop) من خلال برنامج Activity Monitor ، ثم نحذف كل الملفات والإعدادات الخاصة بـ دوكر. هذه الطريقة أصلحت المشكلة عند بعض المستخدمين لأنها تعيد إعدادات دوكر إلى الإعدادات الإفتراضية، وتحذف كل الكونتينرز (containers) الخاصة بك.
هذه هي الخطوات:
- افتح برنامج تصفح الملفات (Finder)
- افتح مجلد التطبيقات (Applications)
- افتح مجلد أدوات ماك أو إس المُسمَى Utilities
- ثم افتح برنامج Activity Monitor.app
- حدد برنامج Docker ثم اضغط على زر x الموجود في الدائرة في الأعلي لعمل غلق إجباري أو إيقاف إجباري له
- حدد أيضاً برنامج Docker Desktop ثم اعمل إيقاف إجباري له أو غلق إجباري له من خلال الضغط على زر x الموجود داخل دائرة في أعلى برنامج Activity Monitor.
- اغلق برنامج Activity Monitor
- نفذ هذا الأمر في التيرمينال (Terminal)
sudo rm -rf ~/Library/Containers/com.docker.*
- افتح ملف الإعدادات في واجهة سطر الأوامر (التيرمينال) من خلال هذه الأمر
sudo nano ~/Library/Group\ Containers/group.com.docker/settings.json
- في هذه الملف ستجد “filesharingDirectories” احذف كل العناصر التابعه لهذا البند داخل الملف، ثم احفظ الملف ، ثم إغلق الملف.
لاحظ: استخدمنا برنامج nano
في هذه الأمر لأنه أسهل للمبتدئين. ولكني أفضّل برنامج nvim
(نيو ڤِمْ) وهو fork حديث من البرنامج الشهير vim
(ڤِمْ).
- افتح برنامج دوكر ديسكتوب (Docker Desktop) من قائمة البرامج
لو لم يتم تحل المشكلة حتى الآن ، افتح برنامج دوكر (Docker) من محتويات حزمة البرنامج داخل مجلد البرامج.
هذه الطريقة حلت المشكلة عند بعض المستخدمين. إليك الخطوات.
- دخل مجلد البرامج Applications اضغط ضغطة يمين بالماوس فوق برنامج Docker واختر Show Package Contents ومعناها إظهار محتويات الحزمة.
- ثم افتح مجلد المحتويات contents
- ثم افتح مجلد ماك إو إس MacOS
- ثم اضغط ضغطتين على برنامج تشغيل دوكر Docker
غالباً سيتم حل المشكلة بعد فتح برنامج دوكر بهذه الطريقة.
إعادة تثبيت دوكر 🔗
لو المشكلة لازالت مستمرة، إلغي تثبيت دوكر ، احذف كل الملفات والمجلدات التابعه لـ Docker ثم ثبت دوكر من جديد.
إليك الخطوات بشكل واضح:
- إلغي تثبيت دوكر (Docker)
- نفذ هذه الأوامر بالترتيب في واجهة سطر الأوامر (التيرمينال) (Terminal)
rm -rf Library/Group\ Containers/group.com.docker
rm -rf Library/Containers/com.docker.docker
rm -rf Library/Application\ Support/Docker\ Desktop
لاحظ : إن لم يوافق نظام التشغيل على أي أمر منهم، إضف sudo
قبل الأمر لإجبار نظام التشغيل على طاعتك وتنفيذ أمر الحذف.
- أعد تثبيت دوكر (Docker) من خلال هوم بروم (Homebrew) بهذا الأمر :
brew install --cask docker
لازال دوكر لا يعمل بشكل صحيح 🔗
شغل دوكر من خلال واجهة سطر الأوامر (تيرمينال) لأن بعض المستخدمين قالوا أن هذه الطريقة حلت المشكلة لديهم. كل ما عليك هو تنفيذ هذا الأمر داخل التيرمينال /Applications/Docker.app/Contents/MacOS/Docker
.
إذا لم يتم حل المشكلة حتى بعد تشغيل دوكر من التيرمينال، نفذ هذا الأمر في الـ تيرمينال.
/Applications/Docker.app/Contents/MacOS/com.docker.diagnose gather -upload
هذه الأمر سيقوم بإنشاء تقرير عن حالة دوكر على ماك أو إس عندك، ثم يُرسلها لفريق تطوير دوكر ليعرفوا المشكلات ويعملوا على حلها لجميع المستخدمين في التحديثات القادمة.
أرسل انت هذه التقرير إلى أحد أصدقائك المبرمجين أو مهندسي البرمجيات الأعلى منك خبرة ليساعدوك في معرفة المشكلة وحلها.
ويٌمكنك أيضاً استخدام هذا التقرير في السؤال عن حل لمشكلتك على منتديات المبرمجين مثل ستاك أوڤر فلو (stackoverflow) ، وجت-هب إشيوز (github issues) ، .. وغيرها.