التشغيل السريع: إنشاء ونشر من مستودع إلى Azure Container Apps
توضح هذه المقالة كيفية إنشاء ونشر خدمة مصغرة إلى Azure Container Apps من مستودع GitHub باستخدام لغة البرمجة التي تختارها. في هذا التشغيل السريع، يمكنك إنشاء نموذج خدمة مصغرة، والتي تمثل خدمة واجهة برمجة تطبيقات الويب الخلفية التي ترجع مجموعة ثابتة من ألبومات الموسيقى.
يتوفر هذا التطبيق النموذجي في إصدارين. يتضمن إصدار واحد حاوية، حيث يحتوي المصدر على Dockerfile. الإصدار الآخر لا يحتوي على Dockerfile. حدد الإصدار الذي يعكس التعليمات البرمجية المصدر على أفضل نحو. إذا كنت مستخدما جديدا للحاويات، فحدد الخيار No Dockerfile في الأعلى.
إشعار
يمكنك أيضا إنشاء هذا التطبيق النموذجي ونشره من نظام الملفات المحلي. لمزيد من المعلومات، راجع الإنشاء من التعليمات البرمجية المصدر المحلي ونشر التطبيق الخاص بك في Azure Container Apps.
تظهر لقطة الشاشة التالية الإخراج من خدمة واجهة برمجة تطبيقات الألبوم التي تنشرها.
المتطلبات الأساسية
لإكمال هذا المشروع، تحتاج إلى العناصر التالية:
المتطلبات | الإرشادات |
---|---|
حساب Azure | إذا لم يكن لديك حساب، فبادر بإنشاء حساب مجانا. تحتاج إلى إذن المساهم أو المالك على اشتراك Azure للمتابعة. راجع تعيين أدوار Azure باستخدام مدخل Microsoft Azure للحصول على التفاصيل. |
حساب GitHub | احصل على واحد مجانا. |
git | تثبيت git |
Azure CLI | قم بتثبيت Azure CLI. |
الإعداد
لتسجيل الدخول إلى Azure من CLI، قم بتشغيل الأمر التالي واتبع المطالبات لإكمال عملية المصادقة.
للتأكد من تشغيل أحدث إصدار من CLI، قم بتشغيل أمر الترقية.
بعد ذلك، قم بتثبيت أو تحديث ملحق Azure Container Apps ل CLI.
إذا تلقيت أخطاء حول المعلمات المفقودة عند تشغيل az containerapp
الأوامر في Azure CLI أو cmdlets من Az.App
الوحدة النمطية في PowerShell، فتأكد من تثبيت أحدث إصدار من ملحق Azure Container Apps.
az extension add --name containerapp --upgrade
إشعار
بدءا من مايو 2024، لم تعد ملحقات Azure CLI تمكن ميزات المعاينة بشكل افتراضي. للوصول إلى ميزات معاينة تطبيقات الحاوية، قم بتثبيت ملحق Container Apps باستخدام --allow-preview true
.
az extension add --name containerapp --upgrade --allow-preview true
الآن بعد تثبيت الملحق أو الوحدة النمطية Microsoft.App
الحالية، قم بتسجيل مساحات الأسماء و Microsoft.OperationalInsights
.
az provider register --namespace Microsoft.App
az provider register --namespace Microsoft.OperationalInsights
إنشاء متغيرات البيئة
الآن بعد اكتمال إعداد Azure CLI، يمكنك تحديد متغيرات البيئة المستخدمة في هذه المقالة.
حدد المتغيرات التالية في bash shell.
export RESOURCE_GROUP="album-containerapps"
export LOCATION="canadacentral"
export ENVIRONMENT="env-album-containerapps"
export API_NAME="album-api"
export GITHUB_USERNAME="<YOUR_GITHUB_USERNAME>"
قبل تشغيل هذا الأمر، تأكد من استبدال <YOUR_GITHUB_USERNAME>
باسم مستخدم GitHub الخاص بك.
بعد ذلك، حدد اسم سجل حاوية فريدا لك.
export ACR_NAME="acaalbums"$GITHUB_USERNAME
إعداد مستودع GitHub
في نافذة المتصفح، انتقل إلى مستودع GitHub للغة المفضلة لديك وقم بتشعب المستودع.
حدد الزر نسخة المستودع في أعلى مستودع واجهة برمجة تطبيقات الألبوم لتشعب المستودع إلى حسابك. ثم انسخ عنوان URL للم repo لاستخدامه في الخطوة التالية.
في نافذة المتصفح، انتقل إلى مستودع GitHub للغة المفضلة لديك وقم بتشعب المستودع بما في ذلك الفروع.
حدد الزر نسخة المستودع في أعلى مستودع واجهة برمجة تطبيقات الألبوم لتشعب المستودع إلى حسابك. قم بإلغاء تحديد "نسخ main
الفرع فقط" لتفرع buildpack
الفرع أيضا.
إنشاء تطبيق الحاوية ونشره
إنشاء ونشر تطبيق الحاوية الأول من مستودع GitHub المتشعب باستخدام containerapp up
الأمر . سيقوم هذا الأمر ب:
- إنشاء مجموعة موارد
- إنشاء بيئة Container Apps باستخدام مساحة عمل Log Analytics
- إنشاء سجل حاوية Azure
- إنشاء سير عمل GitHub Action لإنشاء تطبيق الحاوية ونشره
- إنشاء مجموعة موارد
- إنشاء بيئة Container Apps باستخدام مساحة عمل Log Analytics
- إنشاء سجل افتراضي تلقائيا كجزء من بيئتك
- إنشاء سير عمل GitHub Action لإنشاء تطبيق الحاوية ونشره
عند دفع تعليمة برمجية جديدة إلى المستودع، سيقوم إجراء GitHub ب:
- إنشاء صورة الحاوية ودفعها إلى Azure Container Registry
- نشر صورة الحاوية إلى تطبيق الحاوية الذي تم إنشاؤه
up
يستخدم الأمر Dockerfile في جذر المستودع لإنشاء صورة الحاوية.
EXPOSE
تعرف التعليمات في Dockerfile المنفذ الهدف. ملف Docker غير مطلوب لإنشاء تطبيق حاوية.
- الكشف تلقائيا عن اللغة ووقت التشغيل
- إنشاء الصورة باستخدام Buildpack المناسب
- دفع الصورة إلى السجل الافتراضي لتطبيقات حاوية Azure
يجب أن يكون تطبيق الحاوية متاحا لحركة مرور الدخول. تأكد من كشف المنفذ 8080 للاستماع إلى الطلبات الواردة.
في الأمر التالي، استبدل <YOUR_GITHUB_REPOSITORY_NAME>
باسم مستودع GitHub الخاص بك في شكل https://github.com/<OWNER>/<REPOSITORY-NAME>
أو <OWNER>/<REPOSITORY-NAME>
.
في الأمر التالي، استبدل <YOUR_GITHUB_REPOSITORY_NAME>
باسم مستودع GitHub الخاص بك في شكل https://github.com/<OWNER>/<REPOSITORY-NAME>
أو <OWNER>/<REPOSITORY-NAME>
.
--branch buildpack
استخدم الخيار للإشارة إلى مصدر العينة بدون Dockerfile.
az containerapp up \
--name $API_NAME \
--resource-group $RESOURCE_GROUP \
--location $LOCATION \
--environment $ENVIRONMENT \
--context-path ./src \
--repo <YOUR_GITHUB_REPOSITORY_NAME>
az containerapp up \
--name $API_NAME \
--resource-group $RESOURCE_GROUP \
--location $LOCATION \
--environment $ENVIRONMENT \
--context-path ./src \
--ingress external \
--target-port 8080 \
--repo <YOUR_GITHUB_REPOSITORY_NAME>
--branch buildpack
--
باستخدام عنوان URL ورمز المستخدم المعروض في المحطة الطرفية، انتقل إلى صفحة تنشيط جهاز GitHub في مستعرض وأدخل رمز المستخدم إلى الصفحة. اتبع المطالبات لتخويل Azure CLI للوصول إلى مستودع GitHub الخاص بك.
up
ينشئ الأمر سير عمل GitHub Action في مجلد .github/workflows الخاص بالمستودع. يتم تشغيل سير العمل لإنشاء تطبيق الحاوية ونشره عند دفع التغييرات إلى المستودع.
تحقق من النشر
انسخ اسم المجال الذي تم إرجاعه بواسطة containerapp up
إلى مستعرض ويب. من مستعرض الويب، انتقل إلى /albums
نقطة نهاية عنوان URL.
تنظيف الموارد
إذا كنت لن تستمر في البرنامج التعليمي Deploy a frontend ، يمكنك إزالة موارد Azure التي تم إنشاؤها أثناء هذا التشغيل السريع باستخدام الأمر التالي.
تنبيه
يحذف الأمر التالي مجموعة الموارد المحددة وجميع الموارد المضمنة فيها. إذا كانت المجموعة تحتوي على موارد خارج نطاق هذا التشغيل السريع، يتم حذفها أيضا.
تلميح
هل تواجه مشكلات؟ اسمحوا لنا أن نعرف على GitHub عن طريق فتح مشكلة في Azure Container Apps repo.
الخطوات التالية
بعد إكمال هذا التشغيل السريع، يمكنك المتابعة إلى البرنامج التعليمي: الاتصال بين الخدمات المصغرة في Azure Container Apps لمعرفة كيفية نشر تطبيق واجهة أمامية يستدعي واجهة برمجة التطبيقات.