divmagic Make design
SimpleNowLiveFunMatterSimple
ما وراء أوبونتو: أدوات كانونيكال التطويرية التي تدعم تطوير الويب الحديث
Blogsديف أوبسما وراء أوبونتو: أدوات كانونيكال التطويرية التي تدعم تطوير الويب الحديث
ديف أوبس

ما وراء أوبونتو: أدوات كانونيكال التطويرية التي تدعم تطوير الويب الحديث

الشركة التي تقف وراء أوبونتو تطور أيضًا هذه الأدوات المذهلة للمطورين

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

مولتيباس: أجهزة افتراضية فورية لأوبونتو على أي منصة

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

يستخدم مولتيباس برامج المراقبة الأصلية، هايبر-في على ويندوز، وكيو إيم يو على ماك، وكيه في إم على لينكس، مما يجعله أسرع بكثير من البدائل القائمة على فيرتشوال بوكس. أوقات الإقلاع تقل عن ثلاث ثوانٍ على الأجهزة الحديثة.

كيف يتفوق مولتيباس على دوكر لأحمال عمل لينكس الخالصة

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

# تشغيل جهاز افتراضي باسم 'dev-node' بذاكرة 4 جيجابايت ومعالجين
multipass launch --name dev-node --memory 4G --cpus 2

# تنفيذ أمر مباشرة
multipass exec dev-node -- sudo apt update

# ربط دليل مشروعك المضيف داخل الجهاز الافتراضي
multipass mount ~/my-project dev-node:/home/ubuntu/work

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

Impact of Canonical Developer Tools

إل إكس دي: حاويات نظام تشبه الأجهزة الافتراضية

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

laptop, notebook, cellphone, computer, desk, workspace, workplace, wireless technology, codes, coding, data, display, electronics, html, internet, keyboard, monitor, office, pen, screen, smartphone, technology, wireless, working, laptop, computer, coding, coding, coding, coding, coding

سير العمل في العالم الحقيقي: بنية الخدمات المصغرة المحلية

تخيل أنك تبني تطبيق ويب حديثًا بواجهة أمامية من رياكت، وواجهة برمجة تطبيقات بايثون، وذاكرة تخزين مؤقت ريديس، وقاعدة بيانات بوستجري إس كيو إل. باستخدام إل إكس دي، يمكنك نمذجة طوبولوجيا الإنتاج بأكملها محليًا:

# إنشاء حاوية لقاعدة البيانات
lxc launch ubuntu:22.04 db-server
lxc exec db-server -- apt install postgresql -y

# إنشاء حاوية لواجهة برمجة التطبيقات
lxc launch ubuntu:22.04 api-server
lxc exec api-server -- apt install python3-pip -y

# تعيين عناوين IP ثابتة وربطها
lxc network attach lxdbr0 db-server eth0
lxc config device set db-server eth0 ipv4.address=10.0.0.10

تحصل كل حاوية على واجهة الشبكة الخاصة بها، وقواعد جدار الحماية، وحدود الموارد. يمكنك محاكاة زمن انتقال الشبكة، أو فقدان الحزم، أو حتى سحب القابس على خدمة لاختبار المرونة.

يتكامل إل إكس دي بشكل أصلي مع كلاود-إينيت، مما يعني أنه يمكنك توفير الحاويات باستخدام نفس أدوات إدارة التكوين المستخدمة في AWS وAzure وGoogle Cloud. تتطابق بيئة الاختبار المحلية لديك مع البنية التحتية للإنتاج وصولاً إلى إصدارات حزم نظام التشغيل.

Developer Adoption Rate

جوجو: نمذجة التطبيقات تتجاوز فوضى واي إم إل

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

نظام تشارم يؤتمتة المعرفة التشغيلية

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

juju deploy postgresql --channel 14/stable -n 3
juju deploy my-django-app
juju relate my-django-app postgresql:db

السطر الأخير هو السحر. juju relate يخبر جوجو أن تطبيق جانغو الخاص بك يحتاج إلى قاعدة بيانات. يقوم جوجو تلقائيًا بتكوين بوستجري إس كيو إل، وإنشاء قاعدة البيانات والمستخدم، وحقن سلسلة الاتصال في متغيرات بيئة تطبيق جانغو الخاص بك. لا تكوين يدوي على الإطلاق.

سد الفجوة بين المطور والإنتاج

تظهر القوة الحقيقية لنظام كانونيكال البيئي عندما تستخدم هذه الأدوات معًا. يبدو سير العمل الشائع كما يلي:

code, coding, computer, data, desktop, ethernet, monitor, office, programmer, programming, screen, software, technology, work, working, blue computer, blue office, blue technology, blue laptop, blue work, blue data, blue code, blue coding, blue software, blue programming, code, coding, coding, coding, coding, coding, programmer, programmer, programming, software, software, software

  1. التطوير محليًا باستخدام أجهزة مولتيباس الافتراضية المطابقة لإصدار أوبونتو المستهدف.
  2. محاكاة الطوبولوجيا الكاملة باستخدام حاويات إل إكس دي لكل خدمة.
  3. نمذجة النشر بحزم جوجو التي تحدد العلاقات وقواعد التوسع.
  4. النشر بشكل متطابق على أي سحابة عامة أو خاصة، أو على العتاد الصلب.

<ComparisonTable headers="

ابدأ الإنشاء باستخدام DivMagic اليوم

انضم إلى أكثر من 10000 من المطورين والمصممين وأصحاب الأعمال لنسخ التعليمات البرمجية من أي موقع ويب واستخدامها في مشاريعهم الخاصة.

Get DivMagic for 42% off

Limited time deal for 22:45