كيف يمكنني إصلاح Docker دون ترك مساحة على الجهاز؟

How Do I Fix Docker No Space Left Device



لاستخدام برامج تشغيل التخزين بنجاح ، يجب أولاً فهم كيفية إنشاء Docker للصور وحفظها وكيفية استخدام الحاويات لهذه الصور. يمكنك استخدام هذه البيانات لاتخاذ قرارات مستنيرة حول أفضل البيانات من تطبيقاتك مع تجنب مشكلات الأداء. تمكّنك برامج تشغيل التخزين من كتابة البيانات إلى طبقة الحاوية القابلة للكتابة. بعد إتلاف الحاوية ، لا يتم حفظ الملفات ، وتكون معدلات القراءة والكتابة أبطأ من أداء تطبيق الملف الأصلي. قد ترغب في تنظيف محرك الأقراص الثابتة لنظامك لتنزيل صورة Docker وتشغيلها. ومع ذلك ، إذا لم يكن لديك مساحة كافية على محرك الأقراص الثابتة ، فقد يظهر لك الخطأ: لم يتبق مساحة على الجهاز. عندما يكون الخادم الخاص بك مسدودًا بالملفات المهملة ، يمكن أن يؤثر ذلك على جهاز الكمبيوتر لإبطاء سرعته. ستحتاج إلى استعادة مساحة محددة لإصلاحها. يتطلب محرك الحاوية السحابية Dot برمجة نصية بسيطة نسبيًا لمسح التخزين. تشير هذه المشكلة عادةً إلى نفاد مساحة Docker. / var / lib / docker هو المكان الذي يخزن فيه بياناته. يجب أن يحتوي هذا الدليل على مساحة خالية كافية على أي نظام ملفات تم تثبيته عليه. في هذا البرنامج التعليمي ، ستتعلم طرقًا مختلفة لإصلاح Docker دون ترك مساحة على الجهاز.

المتطلبات المسبقة

لإصلاح Docker دون ترك مساحة على الجهاز ، يجب عليك استخدام نظام Ubuntu 20.04 Linux وتثبيت Docker فيه. إذا لم يتم تثبيت Docker ، فيمكنك القيام بذلك بمساعدة الأمر المذكور أدناه في الجهاز







$سودوملائمتثبيتdocker.io

طريقة لإصلاح Docker لا توجد مساحة متبقية على الجهاز

يجب عليك تسجيل الدخول عبر مستخدم sudo وفتح محطة سطر الأوامر عن طريق التحقق منها في منطقة تطبيق نظام التشغيل أو استخدام مفتاح الاختصار Ctrl + Alt + T. بمجرد فتحه ، اتبع كل هذه الطرق الموضحة في هذه المقالة.



الطريقة 1: Docker System Prune

يتم استخدام أمر 'docker system prune' لإزالة الكائنات أو البيانات غير المستخدمة أو حذفها ، بما في ذلك الصور والحاويات ووحدات التخزين والشبكات. لا يتم مسح هذه الأشياء إلا إذا قمنا بإزالتها بوعي ؛ حتى مع ذلك ، في docker 17.06.1 أو أعلى ، يجب أن نطلب إمكانية 'مجلدات' لإزالة وحدات التخزين. يزيل كل من الصور المتدلية وغير المرجعية ؛ ومع ذلك ، يتم فقط بشكل افتراضي إزالة الصور المتدلية. لا يمكن استخدام 'docker system prune' إلا مع إصدار عميل و daemon API 1.25 أو أعلى. الآن قم بتنفيذ الأمر المدرج:



$سودونظام عامل ميناءتقليم





يجب عليك توفير كلمة مرور مستخدم sudo لتنفيذه بنجاح. عند التنفيذ سيصلك التحذير التالي كما هو موضح بالصورة المرفقة. يجب عليك إدخال y للاستمرار في هذه العملية. عندما ننفذ الأمر 'docker system prune' ، فإنه يرسل طلب واجهة برمجة التطبيقات إلى Docker daemon ، الذي يبحث عن جميع العناصر غير المستخدمة على المضيف ويستأصلها من النظام. منذ أن قامت الإصدارات السابقة من Docker بإزالة جميع الكائنات ، بما في ذلك وحدات التخزين ، تمت إضافة خيار 'مجلدات'.

الطريقة الثانية: إزالة الصور المتدلية

يمكن استخدام الأمر volume في Docker لإنجاز ذلك. نظرًا لأن هذا يؤدي إلى مسح أي دليل أو مجلد في / var / lib / docker / مجلدات ليست وحدة تخزين ، يجب عليك التأكد من عدم حفظ أي مستندات مهمة هناك. عند إنشاء صورة Docker ، عادة ما تكون هناك طبقات عديدة من الصور. يشار إلى الطبقات التي لا تحتوي على إشارة إلى أي صورة مميزة على أنها صور متدلية. تشغل الصور المتدلية مساحة تخزين ولكن لا تفعل شيئًا. لعرض قائمة بجميع وحدات التخزين ، استخدم الأمر:



$سودوحجم عامل ميناءls

استخدم الأمر التالي للحصول على قائمة بجميع المجلدات المتدلية:

$سودوحجم عامل ميناءls–qfتتدلى=حقيقية

يجب عليك توفير كلمة مرور مستخدم sudo لتنفيذه بنجاح.

الطريقة الثالثة: إزالة وحدات التخزين المعزولة

للبدء ، ستحتاج إلى محو أي مجلدات معزولة في Docker. الآن للتخلص من جميع المجلدات المعزولة ، قم بتنفيذ الأمر التالي:

$حجم عامل ميناءجمهورية مقدونيا

استنتاج:

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