Introduction
تخيل أنك تعمل كمهندس برامج لمتاجر تجزئة ملابس خارجية عبر الإنترنت. أنت مسؤول عن نشر وتحديث واجهة متجر بائع التجزئة عبر الإنترنت، وهو تطبيق .NET أصلي على السحابة يستند إلى الخدمات المصغرة.
لتلبية متطلبات المشروع وتعزيز ممارسات التطوير المرنة لفريقك، تقرر مقارنة التكامل المستمر والنشر المستمر (CI/CD) من خلال GitHub Actions وAzure Pipelines. تستخدم البنية الأساسية لبرنامج ربط العمليات التجارية CI/CD سلسلة من الخطوات التلقائية لتجميع التطبيقات ونشرها من الإنشاء عبر جميع البيئات.
نظرا لأن الويب الحالي يحتوي على بنية خدمات مصغرة، ويتم نشر كل خدمة مصغرة بشكل مستقل، تبدأ بإعداد CI/CD لخدمة واحدة.
تدعم واجهة برمجة تطبيقات الويب .NET، المسماة خدمة المنتج، جميع ميزات كتالوج الواجهة الخلفية لموقع الويب. في هذه الوحدة النمطية، ستقوم بتنفيذ مسار CI/CD لخدمة المنتج.
ترشدك هذه الوحدة خلال الخطوات التالية:
- مصادقة إجراءات GitHub إلى سجل حاوية.
- تخزين المعلومات الحساسة التي تستخدمها GitHub Actions بشكل آمن.
- تنفيذ إجراء لإنشاء صورة الحاوية لخدمة مصغرة.
- تعديل التعليمات البرمجية للخدمات المصغرة وتثبيتها لتشغيل بنية.
- تنفيذ إجراء لنشر الحاوية المحدثة إلى نظام مجموعة Azure Kubernetes Service (AKS).
- تعديل مخطط Helm وتثبيته لتشغيل النشر.
- إرجاع الخدمة المصغرة إلى النشر السابق.
يمكنك استخدام اشتراك Azure الخاص بك لنشر الموارد في هذه الوحدة النمطية. في حال لم يكن لديك اشتراك Azure، فأنشئ حساباً مجانيّاً قبل البدء.
Important
لتجنب الرسوم غير الضرورية في اشتراك Azure، تأكد من حذف موارد Azure عند الانتهاء من هذه الوحدة.
Prerequisites
- المعرفة المفاهيمية لممارسات DevOps.
- المعرفة المفاهيمية للحاويات وDocker وAKS.
- الوصول إلى اشتراك Azure بأذونات المالك .
- الوصول إلى حساب GitHub.
- القدرة على تشغيل حاويات التطوير في Visual Studio Code أو GitHub Codespaces، التي تم إعدادها كما هو موضح في القسم التالي.
حاوية التطوير
تتضمن هذه الوحدة ملفات التكوين التي تحدد حاوية التطوير أو حاوية التطوير. يضمن استخدام حاوية التطوير بيئة موحدة تم تكوينها مسبقا باستخدام الأدوات المطلوبة.
يمكن تشغيل حاوية التطوير في أي من البيئتين. قبل البدء، اتبع الخطوات الواردة في أحد الارتباطات التالية لإعداد بيئتك، بما في ذلك تثبيت Docker وملحقات Visual Studio Code الضرورية.
- Visual Studio Code وبيئة Docker المدعومة على جهازك المحلي.
- GitHub Codespaces (قد يتم تطبيق التكاليف).