البرنامج التعليمي: نشر تطبيق حاوية مع CI/CD إلى نظام مجموعة Service Fabric
هذا البرنامج التعليمي هو الجزء الثاني من سلسلة، ويصف كيفية إعداد التكامل المستمر والنشر لتطبيق حاوية Azure Service Fabric باستخدام Visual Studio وAzure DevOps. مطلوب تطبيق "Service Fabric" موجودة، ويتم استخدام التطبيق الذي تم إنشاؤه في نشر تطبيق .NET في حاوية Windows إلى Azure Service Fabric كمثال.
في الجزء الأول من السلسلة، ستتعلم كيفية:
- إضافة عنصر تحكم مصدر إلى المشروع
- إنشاء تعريف بنية في مستكشف الفريق لدى Visual Studio
- إنشاء تعريف إصدار في مستكشف الفريق لدى Visual Studio
- نشر تطبيق وترقيته تلقائيًّا
المتطلبات الأساسية
قبل أن تبدأ هذا البرنامج التعليمي:
- لديك كتلة على Azure، أو إنشاء واحد مع هذا البرنامج التعليمي
- نشر التطبيق الموضوع في حاوية
إعداد ملف تعريف نشر
والآن بعد أن قمت بنشر تطبيق حاوية، فأنت جاهز لإعداد التكامل المستمر. أولًا، قم بإعداد ملف تعريف نشر داخل التطبيق الخاص بك للاستخدام من قبل عملية النشر التي تُنفذ داخل DevOps Azure. يجب تكوين ملف تعريف النشر لاستهداف نظام المجموعة الذي قمت بإنشائه مسبقًا. بدء Visual Studio وفتح مشروع تطبيق "Service Fabric" الموجود. في Solution Explorer، انقر بزر الماوس الأيمن فوق التطبيق وحدد Publish....
اختر ملف تعريف هدفًا ضمن مشروع التطبيق؛ لاستخدامه لسير عمل التكامل المستمر، السحابة على سبيل المثال. حدد نقطة نهاية اتصال نظام المجموعة. تحقق من خانة اختيار Upgrade the Application بحيث يتم ترقية التطبيق الخاص بك لكل نشر في DevOps Azure. انقر فوق الارتباط التشعبي Save لحفظ الإعدادات إلى ملف تعريف النشر ثم انقر فوق Cancel لغلق مربع الحوار.
شارك الحل Visual Studio الخاص بك إلى إعادة إنشاء Azure DevOps Git الجديد
مشاركة ملفات مصدر التطبيق إلى مشروع فريق في Azure DevOps بحيث يمكنك إنشاء بنيات.
إنشاء repo Git محلية جديدة لمشروعك عن طريق تحديد إضافة التحكم في المصدر ->Git على شريط الحالات في الزاوية اليمنى السفلى من Visual Studio.
في طريقة العرض Push في Team Explorer، حدد الزر Publish Git Repo أسفل Push to Azure DevOps.
تحقق من بريدك الإلكتروني وحدد مؤسستك في القائمة المنسدلة Account. قد تضطر إلى إعداد مؤسسة إذا لم يكن لديك واحدة بالفعل. أدخل اسم المستودع وحدد Publish repository.
يؤدي نشر المستودع إلى إنشاء مشروع فريق جديد في حسابك بنفس اسم المستودع المحلي. لإنشاء المستودع في مشروع فريق موجود، انقر فوق Advanced بجوار اسم Repository وحدد مشروع فريق. يمكنك عرض التعليمات البرمجية على الويب عن طريق تحديد See it on the web.
تكوين التسليم المستمر باستخدام Azure Pipelines
تعريف بنية Azure DevOps يصف سير عمل يتكون من مجموعة من خطوات البناء التي يتم تنفيذها بشكل تسلسلي. إنشاء تعريف بنى ينتج حزمة تطبيق "Service Fabric" والبيانات الاصطناعية الأخرى لنشرها إلى نظام مجموعة "Service Fabric". تعرف على المزيد حول تعريفات الإنشاءلـ Azure DevOps.
يصف تعريف إصدار Azure DevOps سير عمل ينشر حزمة تطبيق إلى نظام مجموعة. عند استخدامهما معًا، تعريف البناء وتعريف الإصدار ينفذان سير العمل بأكمله بداية من الملفات المصدر إلى النهاية مع تطبيق قيد التشغيل في نظام المجموعة الخاص بك. تعرف على المزيد حول تعريفات الإصدارلـ Azure DevOps.
إنشاء تعريف بنية
افتح مشروع الفريق الجديد عن طريق التنقل إلى https://dev.azure.com مستعرض ويب وتحديد مؤسستك، متبوعًا بالمشروع الجديد.
حدد الخيار Pipelines على اللوحة اليمنى، ثم انقر فوق New Pipeline.
إشعار
إذا لم تشاهد قالب تعريف البنية، تأكد من إيقاف تشغيل ميزة New YAML pipeline creation experience. تم تكوين هذه الميزة ضمن المقطع Preview Features من حساب DevOps الخاص بك.
حدد Azure Repos Git كمصدر واسم مشروع الفريق ومستودع المشروع والفرع الافتراضي master أو البنى اليدوية والمقررة. ثم انقر فوق Continue.
في Select a template، حدد قالب Azure Service Fabric application with Docker support وانقر فوق Apply.
في Tasks، حدد Hosted VS2017 كـ Agent pool.
انقر فوق Tag images.
في Container Registry Type، حدد Azure Container Registry. حدد Azure Subscription، ثم انقر فوق Authorize. حدد Azure Container Registry.
انقر فوق Push images.
في Container Registry Type، حدد Azure Container Registry. حدد Azure Subscription، ثم انقر فوق Authorize. حدد Azure Container Registry.
ضمن علامة التبويب Triggers، تمكين التكامل المستمر عن طريق التحقق Enable continuous integration. ضمن Branch filters، انقر فوق + Add، وسيتم تعيين Branch specification بشكل افتراضي إلى master.
في Save build pipeline and queue dialog، انقر فوق Save & queue لبدء عملية بناء يدويًّا.
ينشئ أيضًا المشغل عند الدفع أو التسجيل. للتحقق من تقدم البنية، قم بالتبديل إلى علامة التبويب Builds. وبمجرد التحقق من تنفيذ البنية بنجاح، قم بتحديد تعريف إصدار ينشر التطبيق الخاص بك إلى نظام مجموعة.
إنشاء تعريف إصدار
حدد الخيار Pipelines على اللوحة اليمنى، ثم Releases، ثم + New pipeline. في Select a template، حدد قالب Azure Service Fabric Deployment من القائمة ثم Apply.
حدد Tasks، ثم Environment 1، ثم +New لإضافة اتصال مجموعة نظام جديد.
في طريقة عرض Add new Service Fabric Connection حدد Certificate Based أو Microsoft Entra ID authentication. حدد اسم اتصال "mysftestcluster"، ونقطة نهاية مجموعة نظام "tcp://mysftestcluster.southcentralus.cloudapp.azure.com:19000" (أو نقطة النهاية مجموعة نظام التي تقوم بنشرها).
للمصادقة المستندة إلى الشهادة، قم بإضافة Server certificate thumbprint لشهادة الخادم المستخدمة لإنشاء مجموعة النظام. في Client certificate، قم بإضافة ترميز 64-الأساسي لملف شهادة العميل. راجع الإطار المنبثق للمساعدة في هذا الحقل للحصول على معلومات حول كيفية الحصول على تمثيل الشهادة المشفرة الأساسية-64. إضافة Password للشهادة أيضًا. يمكنك استخدام شهادة نظام المجموعة أو الخادم إذا لم يكن لديك شهادة عميل منفصلة.
بالنسبة إلى بيانات اعتماد Microsoft Entra، أضف بصمة إبهام شهادة الخادم لشهادة الخادم المستخدمة لإنشاء نظام المجموعة وبيانات الاعتماد التي تريد استخدامها للاتصال بالمجموعة في حقلي اسم المستخدم وكلمة المرور.
انقر فوق Add لحفظ اتصال نظام المجموعة.
ضمن عامل المرحلة، انقر فوق Deploy Service Fabric Application. انقر فوق Docker Settings ثم انقر فوق Configure Docker settings. في Registry Credentials Source، حدد Azure Resource Manager Service Connection. ثم حدد Azure subscription.
بعد ذلك، إضافة بيانات اصطناعية للبنية إلى البنية الأساسية بحيث يمكن العثور على تعريف الإصدار الإخراج من البنية. حدد Pipeline وArtifacts>+Add. في In Source (Build definition)، حدد تعريف البنية الذي قمت بإنشائه مسبقًا. انقر فوق Add لحفظ البيانات الاصطناعية للبنية.
تمكين مشغل نشر مستمر بحيث يتم إنشاء إصدار تلقائي عند اكتمال الإنشاء. انقر فوق رمز الإضاءة في البيانات الاصطناعية، وقم بتمكين المشغل، وانقر فوق Save لحفظ تعريف الإصدار.
حدد + Release ->Create a Release ->Create لإنشاء إصدار بشكل يدوي. يمكنك مراقبة تقدم الإصدار في علامة التبويب Releases.
تحقق من نجاح عملية النشر وتشغيل التطبيق في نظام المجموعة. افتح مستعرض ويب وانتقل إلى http://mysftestcluster.southcentralus.cloudapp.azure.com:19080/Explorer/
. لاحظ إصدار التطبيق في هذا المثال هو "1.0.0.20170616.3".
الالتزام بالتغييرات ودفعها، وإطلاق إصدار
للتحقق من أن خط أنابيب التكامل المستمر يعمل عن طريق إيداع بعض التغييرات في التعليمات البرمجية إلى DevOps Azure.
أثناء كتابة التعليمات البرمجية، يتم تعقب التغييرات تلقائيًّا بواسطة Visual Studio. قم بإجراء تغييرات على مستودع Git المحلي الخاص بك عن طريق تحديد أيقونة التغييرات المعلقة () من شريط المعلومات في أسفل اليمين.
في طريقة عرض Changes في Team Explorer، أضف رسالة تصف التحديث الخاص بك والتزم بالتغييرات.
حدد أيقونة شريط حالة التغييرات غير المنشورة () أو طريقة عرض المزامنة في مستكشف الفريق. حدد Push لتحديث التعليمات البرمجية في Azure DevOps.
دفع التغييرات إلى Azure DevOps تلقائيًّا يؤدي لتشغيل بنية. عند اكتمال تعريف البنية بنجاح، يتم إنشاء إصدار تلقائيًّا ويبدأ ترقية التطبيق في نظام المجموعة.
للتحقق من تقدم البنية، قم بالتبديل إلى علامة التبويب Builds في Team Explorer في Visual Studio. بمجرد التحقق من تنفيذ البنية بنجاح، قم بتعريف تعريف إصدار ينشر التطبيق الخاص بك بنظام مجموعة.
تحقق من نجاح عملية النشر وتشغيل التطبيق في نظام المجموعة. افتح مستعرض ويب وانتقل إلى http://mysftestcluster.southcentralus.cloudapp.azure.com:19080/Explorer/
. لاحظ إصدار التطبيق في هذا المثال هو "1.0.0.20170815.3".
تحديثِ التطبيق
إجراء تغييرات التعليمات البرمجية في التطبيق. حفظ التغييرات وتنفيذها، باتباع الخطوات السابقة.
بمجرد بدء ترقية التطبيق، يمكنك مشاهدة تقدم الترقية في Service Fabric Explorer:
تستغرق ترقية التطبيق عدة دقائق. عند اكتمال الترقية، سيتم تشغيل التطبيق الإصدار التالي. بهذا المثال "1.0.0.20170815.4".
الخطوات التالية
في هذا البرنامج التعليمي، نتعلم طريقة القيام بما يأتي:
- إضافة عنصر تحكم مصدر إلى المشروع
- إنشاء تعريف بنية
- إنشاء تعريف إصدار
- نشر تطبيق وترقيته تلقائيًّا
تتعلم في الجزء التالي من البرنامج التعليمي كيفية إعداد لمراقبة حاويتك.