تعرّف على Docker
أجل، هذا على نطاق أوسع، لاحظ أنها تستعمل Linux containers وبالتالي يمكنه [1] استعمال Docker
-حتى يفهم القارئ- هذا في حالة وجود العديد من الخواديم وبالتالي يجب إدارة العديد من الـحاويات (container instances)، يتم استعمال ما يعرف بالـ Orchestration tools و cluster manager ك mesos أو غيره..
وقد بدأ القائمون على مشروع Docker بتطوير libswarm، والتي يمكن أن تكون كـ backends يمكن استعمالها من طرف هذه الأدوات في إدارة الأنظمة الموزعة [2]
الجميل في Docker أنه يمكن تضمينه في (أو يكون هو أساس) جميع الـ Orchestration tools ، بل وغير ذلك أيضا، أنظر مثلا Apache hadoop يفكرون في تضمينه [3] في إطار عمل MapReduce! ، كذلك مشروع CoreOs الذي يهدف إلى إعادة تعريف توزيعات لينكس الموجهة للخواديم (توزيعة بدون package manager ولا software repositories بل تستعمل عوضا عن ذلك حاويات docker + بعض التطبيقات المساعدة كـ etcd ) أنظر [4] و [5]
هذا بجانب التبني السريع الذي حضي به Docker لدى مزودي خدمات الاستضافة منهم Rockspace ، AWS و Google cloud platform .. (أنصحك بقراءة [6]) تخيل فقط أنه يمكن عمل deploy لتطبيقك على هذه المنصات عن طريق استراد docker image التي بنيتها لتطبيقك وفقط :)
1 -
2 -
3 -
4 -
5 -
/assets/images/media/Host-Diagram.png
6 -
ليس مشابها لـ Vagrant
فـ Vagrant عبارة عن Virtual machine وقد سبق شرح الفروقات بينها وبين Docker في آخر المقال
الشبه الوحيد هو أنهما يستهدفان حل نفس المشكل (أو تقريبا) مع تفوق واضح لـ Docker من حيث الخفة، الحجم، الناقلية ومن الناحية الأمنية أيضا.
هذا مع الإشارة أن Docker و Vagrant في الحقيقة لا يتعارضان، فيمكن لـ Vagrant استعمال Docker، هذا ما يفعله مطوروا Docker أنفسهم لتشغيل Docker على OS X وحتى Windows، عن طريق محاكاة إحدى توزيعات لينكس ثم تنصيب Docker داخلها..
التعليقات