Lazydocker - واجهة المستخدم الرسومية ل Docker مباشرة في المحطة



قبل عامين ، قمنا بالفعل بمراجعة واجهات واجهة المستخدم الرسومية للعمل مع Docker ، لكن عالم محبي هذه الحلول لم يهدأ. في اليوم الآخر ، تم تحديث الإصدار 0.2 ، وفي الوقت نفسه تم نشره على نطاق واسع ، وهو مشروع الشباب lazydocker ، الذي وضع نفسه على أنه "وسيلة أكثر كسولًا لإدارة كل شيء في Docker". تكتسب هذه الأداة شعبية بسرعة - بالأمس لم يصل عدد نجوم GitHub إلى 3000 ، واليوم تجاوزت 4000.

الاحتمالات


يشرح مؤلفو كتاب lazydocker ظهور بنات أفكارهم بهذه الطريقة:

"تذكر أوامر docker أمر صعب. حفظ الأسماء المستعارة أقل صعوبة قليلاً. يكاد يكون من المستحيل مراقبة حالة الحاويات عبر النوافذ العديدة للمحطة. ولكن ماذا لو كانت جميع المعلومات المطلوبة ستكون في نافذة واحدة ، وكل أمر نموذجي يمكن الوصول إليه عن طريق الضغط على مفتاح واحد (وكان من الممكن إضافة الأوامر الخاصة بك)؟ هدف Lazydocker هو جعل هذا الحلم حقيقة ".

لذا ، فإن lazydocker يجعل الجهاز واجهة تفاعلية لـ Docker و Docker Compose ، والذي يسمح لك بالتبديل بسرعة وسهولة بين الخدمات التي تعمل في حاويات مختلفة والموارد ذات الصلة (الصور ، وحدات التخزين) ، عرض حالتها وتنفيذ أوامر مختلفة. نظرًا لأن "في بعض الأحيان يكون من الأفضل رؤية مرة واحدة" ، اهتم المؤلفون بتوضيح GIF مكتفي ذاتيًا جدًا:



ويدعم التنقل بين واجهة كل من لوحة المفاتيح والماوس. عند تحديد العنصر المرغوب فيه ، تكون قائمة السياق متاحة له:


مثال قائمة السياق للحاوية المحددة

كما ترون ، يحتوي كل أمر أيضًا على مفتاح محدد مسبقًا لتنفيذ الإجراءات الشائعة بسرعة. يمكن الاطلاع على قائمة كاملة بهم هنا (بالمناسبة ، تحتوي القائمة على مواقع للعديد من اللغات ، من بينها اللغة الروسية حتى الآن).

يستحق الاهتمام الخاص الاهتمام الذي تم إيلاؤه لعرض حالة الحاويات: هنا ليس فقط إخراج السجلات والتكوين ، ولكن أيضًا إحصائيات معروضة بيانياً (بشكل افتراضي ، هذا هو استهلاك وحدة المعالجة المركزية / الذاكرة) والعمليات العليا. تنطبق هذه الميزات على المقاييس التعسفية ، لعرض الرسوم البيانية التي يتم تكوين الرسوم البيانية أيضًا (انظر قسم stats في التكوين ).

بالنسبة للصور المحددة ، يمكنك رؤية أوامر Dockerfile التي يتم تنفيذها عند تشغيلها ، الطبقات الموروثة. يتم توفير تنظيف الحاويات غير المستخدمة والصور والأحجام ( prune ).

يمكن تعديل الأوامر المتاحة ، وكذلك استكمالها مع الأوامر الخاصة بك. من السهل رؤية كيفية القيام بذلك في customCommands وكتل customCommands من commandTemplates (بالمناسبة ، يمكن أيضًا تحرير التهيئة مباشرة من الأداة المساعدة نفسها):

 commandTemplates: dockerCompose: docker-compose restartService: '{{ .DockerCompose }} restart {{ .Service.Name }}' stopService: '{{ .DockerCompose }} stop {{ .Service.Name }}' … customCommands: containers: - name: bash attach: true command: docker exec -it {{ .Container.ID }} /bin/sh serviceNames: [] … 

تركيب


Lazydocker مكتوب في Go باستخدام مكتبة gocui ، المصمم لإنشاء واجهات وحدة التحكم. يتطلب الذهاب الإصدار 1.12. يتم توزيع الكود المصدري تحت رخصة BSD 3-Clause (New) المجانية.

التثبيت يتلخص في أمر بسيط:

 go get github.com/jesseduffield/lazydocker 

الباقي أسهل في المحاولة ونرى بنفسك.

آفاق


لقد تم تطوير lazydocker في الغالب من قبل شخص واحد ، ولكن "دماء جديدة" في وجه المجتمع الأوسع جلبت شعبيتها. على سبيل المثال ، نناقش الآن PRS التي بدأت منذ أقل من يوم بواسطة Dockerfile المعاد تصميمه وتثبيت مبسط لإصدار الأداة المساعدة الثنائية في توزيعات Linux.

في مشكلات المشروع ، يمكنك رؤية طلبات التحسينات مثل ربط المفاتيح المخصص ودعم docker stack . مرة أخرى ، ظهرت قبل أقل من يوم.

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

PS


اقرأ أيضًا في مدونتنا:

Source: https://habr.com/ru/post/ar446700/


All Articles