المجلدات في دوكر هي الطريقة المفضلة للتعامل مع البيانات الدائمة التي يتم إنشاؤها واستخدامها بواسطة حاويات دوكر. دعنا نلقي نظرة على كيفية عمل ذلك من خلال شرح كيفية إنشاء مجلدات دوكر في نظام التشغيل ويندوز. ستتعلم أيضًا كيفية إدارتها أيضًا!
هذه المقالة لها فيديو مرافق تم إنشاؤه بواسطة مساهم TechSnips ، مات ماكلريث. اشاهده اذا كنت تفضل ذلك أو إذا كنت تفضل النص ، متابعة القراءة!
تخزين البيانات الدائمة
إذا كنت ترغب في تخزين البيانات الدائمة للحاويات ، فهناك خياران. أولاً ، سأريك كيفية استخدام ربط المجلد. أنا حاليًا في مجلد يسمى data على C:\. إذا قمت بعرض محتويات هذا المجلد ، يمكنك رؤية أن لدي خمسة ملفات نصية.

إذا كنت أرغب في جعل هذا المجلد متاحًا لحاوية ، يمكنني تركيبه عند بدء تشغيل الحاوية.
لنقم بتشغيل حاوية باستخدام docker run
. سأقوم بتشغيل هذه الحاوية في وضع تفاعلي ، ثم سأحدد -V
. هنا ، سأضع مسار مجلد البيانات الخاص بي ، ثم نقوم بتحديد فاصلة متبوعة بالمسار داخل الحاوية حيث أود تركيب هذا المجلد.
لهذا، سأحدد المجلد C:\shareddata. ثم سأحدد صورة image النواة لخادم Windows وأخيرًا، سأحدد أنني أريد تشغيل PowerShell بمجرد دخولي إلى الحاوية.
الآن بعد أن دخلت الحاوية الجديدة، إذا قمت بقائمة بمحتويات C:\، يمكنك رؤية أن لدي مجلدًا shareddata.

دعونا نذهب إلى ذلك المجلد ونقوم بقائمة بالمحتويات. إليك خمسة ملفات اختبارية موجودة على مضيف الحاوية الخاص بي.

I can also create files in this folder, which will be available to other containers or my container host. Let’s go ahead and run a new item to create a file called containertest.

يمكننا أن نرى أعلاه أن الملف الجديد قد تم إنشاؤه من داخل الحاوية. الآن سأخرج هذه الحاوية مما سيؤدي إلى إيقاف تشغيلها بتشغيل exit
.
إذا قمت بتشغيل docker ps
، يمكنك رؤية أنه لا توجد حاليًا حاويات قيد التشغيل.

تعداد البيانات في أحجام دوكر
الآن دعونا نقوم بقائمة بمحتويات مجلد البيانات مرة أخرى من مضيف الحاوية.

يمكننا رؤية الملف الجديد الذي تم إنشاؤه من داخل الحاوية والذي يسمى containertest. تحمل توصيلات الجبهة بعض الوظائف المحدودة، ومع ذلك، فإن الأحجام هي الطريقة المفضلة لإنجاز ما نحاول القيام به. للبدء في الأحجام، يمكننا تشغيل نفس الأمر لبدء حاوية، ولكن هذه المرة مع بعض الاختلافات الصغيرة. حيث حددنا الحجم، بدلاً من استخدام المسار على نظام ملفات مضيف الحاوية، سأستخدم كلمة hostdata كاسم للحجم الذي أريد إنشاؤه واستخدامه.
من داخل الحاوية الجديدة، إذا قمت بقائمة بمحتويات C:\، يمكنك رؤية مرة أخرى أن لدي مجلدًا يسمى shareddata.

إذا قمت بسرد محتويات ذلك المجلد ، فإنه حاليًا فارغ لأننا أنشأنا حجمًا فارغًا. الآن دعنا نقوم بتشغيل Ctrl-P-Q وهذا سيأخذنا خارج الحاوية الجارية ولكن ستظل تعمل في الخلفية.
من مضيف الحاوية ، قم بتشغيل docker volume ls
. سيتم عرض الحجم الحالي على هذا مضيف الحاوية. لدي حجم يسمى hostdata ، تم إنشاؤه عندما ذكرته في أمر docker run
.

إذا قمت بتشغيل docker ps
، يمكننا رؤية الحاوية الجارية الخاصة بنا.

قم بإيقاف تشغيل تلك الحاوية باستخدام docker stop
. الآن ليس لدينا حاويات تعمل.

قم بإزالة الحاويات المتوقفة بتشغيل docker rm
. إذا قمت بإدراج الأحجام مرة أخرى ، يمكنك رؤية أن حجم hostdata ما زال متاحًا ويمكن توصيله بحاويات جديدة.

إنشاء أحجام Docker
طريقة أخرى لإنشاء حجم هي استخدام أمر docker volume create
. إذا لم تحدد اسمًا ، ستعطيه دوكر اسمًا يتكون من قائمة طويلة من الأحرف العشوائية. وإلا ، يمكنك تحديد اسم هنا. سأطلق على هذا الحجم اسم logdata. الآن يمكننا رؤيته في القائمة عند إدراج الأحجام مرة أخرى.

الآن ستقوم بتوصيل ذلك بحاوية جديدة. استخدم docker run
مرة أخرى وللحجم حدد الحجم الذي تم إنشاؤه للتو وقم بتوصيله بـ c: \ logdata.
من الداخل، اذهب إلى مجلد logdata وأنشئ بعض الملفات. في الوقت الحالي، لا توجد ملفات في هذا الدليل، لذا تفضل بإنشاء بعضها.
الآن لدي ملفين تسجيل في هذا الدليل.

قم بتشغيل Ctrl-P-Q مرة أخرى للخروج من هذا الحاوية أثناء تشغيلها. بينما تعمل هذه الحاوية، قم بتشغيل حاوية جديدة مع نفس الحجم المرفق.
إذا قمنا بتشغيل قائمة في مجلد logdata في الحاوية الجديدة، يمكننا رؤية الملفات التسجيلية الاثنين المشتركة.

الآن، اخرج من هذه الحاوية. يجب أن تظل لديك حاوية واحدة تعمل وحاويتان مخرجتان.

الآن قم بإيقاف جميع الحاويات التي تعمل، ثم قم بتشغيل docker rm
لإزالة جميع الحاويات المخرجة.

قم بإدراج الحجوم مرة أخرى. الحجم logdata ما زال متاحًا ليتم تركيبه على الحاويات المستقبلية.

إذا قمت بتشغيل docker volume
، ستحصل على بعض المساعدة في استخدام الأمر.

تفحص أحجام دوكر
لقد نظرنا بالفعل إلى create
، لذا دعونا ننتقل إلى inspect
. إذا قمت بتشغيل docker volume inspect
ضد الحجم logdata، سيعيد الخصائص لهذا الحجم، بما في ذلك نقطة التركيب التي هي المسار الفعلي للحجم على مضيف الحاوية.

لنفتح هذا المجلد باستخدام Invoke-Item
ونلقي نظرة. تحت مجلد logdata، هناك مجلد يسمى data. إذا قمنا بفتحه، يمكننا رؤية الملفات التي تم إنشاؤها من الحاوية سابقًا.

حذف أحجام دوكر
لحذف حجم، يمكننا تشغيل docker volume rm
، تتبعها باسم الحجم الذي تريد حذفه.
الآن إذا قمت بسرد الأحجام، logdata لم يعد موجودًا.

وأخيرًا، يمكننا استخدام prune
لإزالة جميع الأحجام المحلية غير المستخدمة. سيتم حذف جميع الأحجام التي لم يتم تثبيتها في حاوية قيد التشغيل أو توقفت.

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

ملخص
في هذا المقال، يجب أن تكون قد حصلت على نظرة عامة جيدة على إدارة أحجام docker في نظام التشغيل windows. docker هو منصة حاويات رائعة. مع دعمه لنظام التشغيل windows ومهاراتك الجديدة في إدارة أحجام docker، ستكون لا تُقهَر!