إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
az containerapp up أمر (أو up) هو أسرع طريقة لنشر تطبيق في تطبيقات الحاويات Azure من صورة موجودة، أو كود مصدر محلي، أو مستودع GitHub. عند استخدام هذا الأمر الواحد، يمكنك تشغيل تطبيق الحاوية خلال دقائق.
يمكن للأمر بناء ودفع صورة الحاوية إلى Azure Container Registry عند توفير كود المصدر المحلي أو مستودع GitHub. عندما تعمل من مستودع GitHub، يقوم الأمر بإنشاء سير عمل من GitHub Actions يقوم تلقائيا ببناء ودفع صورة حاوية جديدة عند التزام التغييرات في مستودع GitHub الخاص بك.
توضح لك هذه المقالة كيفية استخدام الأمر لنشر تطبيق حاوية من صورة موجودة، وكود مصدر محلي، ومستودع GitHub.
المتطلبات الأساسية
| المتطلبات | الإرشادات |
|---|---|
| حساب Azure | إذا لم يكن لديك حساب، فبادر بإنشاء حساب مجانا. اشتراكك في Azure يجب أن يكون له دور المساهم أو المالك . للحصول على معلومات تفصيلية، راجع تعيين أدوار Azure باستخدام بوابة Azure. |
| واجهة سطر الأوامر (CLI) Azure | قم بتثبيت Azure CLI. |
| حساب GitHub | إذا كنت ترغب في استخدام صورة في مستودع GitHub، اشترك في حساب GitHub مجاني. |
| التعليمات البرمجية المصدر المحلي | إذا أردت إنشاء صورة من كود المصدر المحلي، ضع كودك في مجلد محلي. |
| صورة موجودة | إذا أردت استخدام صورة موجودة، قم بملاحظة خادم السجل الخاص بك، اسم الصورة، والوسم. إذا كنت تستخدم سجل خاص، قم أيضا بتسجيل بيانات اعتمادك. |
استخدام الموارد الحالية
يمكن للأمر up إنشاء موارد، أو استخدام موارد موجودة، بما في ذلك:
- مجموعة الموارد.
- سجل الحاويات.
- بيئة تطبيقات الحاويات ومساحة عمل تحليلات السجل.
- تطبيق الحاوية الخاص بك.
إذا كنت بحاجة لتخصيص بيئة تطبيقات الحاويات، استخدم أولا الأمر az containerapp env create لإنشاء وتخصيص بيئتك. عندما تشغل up الأمر، استخدم --environment الخيار لتحديد البيئة المخصصة.
إذا لم تحدد بيئة موجودة، يبحث الأمر up عن واحدة في مجموعة الموارد الخاصة بك. إذا وجد الأمر بيئة، فإنه يستخدم تلك البيئة. إذا لم يجد الأمر بيئة معينة، فإنه ينشئ واحدة تتضمن مساحة عمل تحليلات السجل.
لمزيد من المعلومات حول الأمر az containerapp up وخياراته، انظر az containerapp up.
إعداد بيئة Azure CLI
استخدم واجهة برمجة Azure لتسجيل الدخول إلى Azure.
az loginتثبيت إضافة Container Apps لجهاز Azure CLI.
az extension add --name containerapp --upgradeسجل
Microsoft.Appمساحة الاسم.az provider register --namespace Microsoft.Appسجل المزود
Microsoft.OperationalInsightsفي مساحة عمل Log Analytics.az provider register --namespace Microsoft.OperationalInsights
النشر من صورة موجودة
يمكنك نشر تطبيق حاوية يستخدم صورة موجودة في سجل حاوية عام أو خاص. إذا قمت بالنشر من سجل خاص، يجب عليك تقديم بيانات اعتمادك باستخدام ال --registry-server، --registry-usernameو --registry-password الخيارات.
يمكنك استخدام الكود المثال التالي لنشر تطبيق حاوية من صورة موجودة. قبل تنفيذ الأمر، استبدل الحافظات المؤقتة، التي تكون محاطة بأقواس زاوية، بالقيم الخاصة بك.
az containerapp up \
--name <CONTAINER_APP_NAME> \
--image <REGISTRY_SERVER>/<IMAGE_NAME>:<TAG> \
--ingress external \
--target-port <PORT_NUMBER>
ينفذ هذا الأمر الإجراءات التالية:
- قم بإنشاء مجموعة الموارد.
- إنشاء بيئة ومساحة عمل Log Analytics.
- إنشاء تطبيق حاوية يسحب الصورة من سجل عام ونشره.
- يضبط قيمة تطبيق
ingressالحاوية علىexternalمع تعيين المنفذ المستهدف على القيمة المحددة.
يمكنك أيضا استخدام الأمر up لإعادة نشر تطبيق الحاوية. إذا كنت تريد إعادة النشر باستخدام صورة جديدة، فاستخدم --image الخيار لتحديد صورة جديدة. تأكد من أن الخيارات --resource-group وتم --environment ضبطهما على القيم من النشر الأصلي.
az containerapp up \
--name <CONTAINER_APP_NAME> \
--image <REGISTRY_SERVER>/<IMAGE_NAME>:<TAG> \
--resource-group <RESOURCE_GROUP_NAME> \
--environment <ENVIRONMENT_NAME> \
--ingress external \
--target-port <PORT_NUMBER>
النشر من التعليمات البرمجية المصدر المحلي
عند استخدام up الأمر للنشر من مصدر محلي، فإنه ينشئ صورة الحاوية، ويدفعها إلى سجل، وينشر تطبيق الحاوية. إذا لم تحدد سجل، يقوم الأمر بإنشاء سجل في سجل الحاويات.
يمكن للأمر إنشاء الصورة باستخدام Dockerfile أو بدونه. في النسخ التي لا تستخدم Dockerfile، تدعم اللغات التالية:
- .NET
- Node.js
- PHP
- Python
يمكنك استخدام الكود النموذجي التالي لنشر تطبيق حاوية من كود المصدر المحلي:
az containerapp up \
--name <CONTAINER_APP_NAME> \
--source <SOURCE_DIRECTORY>\
--ingress external
ينفذ هذا الأمر الإجراءات التالية:
- قم بإنشاء مجموعة الموارد.
- إنشاء بيئة ومساحة عمل Log Analytics.
- ينشئ سجل في سجل الحاويات.
- يبني صورة الحاوية (باستخدام ملف Docker إذا كان موجودا).
- دفع الصورة إلى السجل.
- إنشاء تطبيق الحاوية ونشره.
عندما يتضمن ملف دوكر التعليمات EXPOSE ، يقوم up الأمر بتكوين مدخل الحاوية ومنفذ الهدف باستخدام المعلومات الموجودة في ملف دوكر. إذا قمت بتكوين الدخول من خلال Dockerfile أو لا يتطلب تطبيقك الدخول، يمكنك حذف --ingress الخيار.
يتضمن إخراج الأمر عنوان URL لتطبيق الحاوية.
إذا أبلغ الأمر بأنه ينتظر وكيل البناء السحابي ثم توقف عن الرد، فقد يكون خطأ مؤقت في GitHub هو مصدر المشكلة. لحل المشكلة، قم بتشغيل الأمر مرة أخرى.
إذا حدث فشل، يمكنك تشغيل الأمر مرة أخرى مع --debug خيار الحصول على مزيد من المعلومات. إذا فشل الإنشاء بدون Dockerfile، يمكنك محاولة إضافة Dockerfile وتشغيل الأمر مرة أخرى.
لاستخدام az containerapp up الأمر لإعادة نشر تطبيق الحاوية مع صورة محدثة، قم بتضمين خيارات --resource-group و --environment لإعادة نشر تطبيق الحاوية من الشفرة المصدرية المحلية، اتبع الخطوات التالية:
قم بإجراء تغييرات على التعليمات البرمجية المصدر.
شغّل الأمر التالي:
az containerapp up \ --name <CONTAINER_APP_NAME> \ --source <SOURCE_DIRECTORY> \ --resource-group <RESOURCE_GROUP_NAME> \ --environment <ENVIRONMENT_NAME>
النشر من مستودع GitHub
عند استخدام az containerapp up الأمر للنشر من مستودع GitHub، فإنه ينشئ سير عمل GitHub Actions الذي يبني صورة الحاوية، ويدفعها إلى سجل، وينشر تطبيق الحاوية. إذا لم تحدد سجل، يقوم الأمر بإنشاء سجل في سجل الحاويات.
مطلوب Dockerfile لإنشاء الصورة. عندما يتضمن ملف دوكر التعليمات EXPOSE ، يقوم الأمر بتكوين مدخل الحاوية ومنفذ الهدف باستخدام المعلومات الموجودة في ملف دوكر.
يمكنك استخدام الكود المثال التالي لنشر تطبيق حاوية من مستودع GitHub:
az containerapp up \
--name <CONTAINER_APP_NAME> \
--repo <GITHUB_REPOSITORY_URL> \
--ingress external
ينفذ هذا الأمر الإجراءات التالية:
- قم بإنشاء مجموعة الموارد.
- إنشاء بيئة ومساحة عمل Log Analytics.
- ينشئ سجل في سجل الحاويات.
- يبني صورة الحاوية باستخدام ملف Dockerfile.
- دفع الصورة إلى السجل.
- إنشاء تطبيق الحاوية ونشره.
- إنشاء سير عمل GitHub Actions لإنشاء صورة الحاوية ونشر تطبيق الحاوية عند دفع التغييرات المستقبلية إلى مستودع GitHub.
إذا فشل الأمر لأن مبدأ الخدمة لا يمكن إنشاؤه، يمكنك إنشاء مبدأ خدمة يدويا في Azure. ثم يمكنك تمرير المعلومات عنها إلى الأمر:
az containerapp up \
--name <CONTAINER_APP_NAME> \
--repo <GITHUB_REPOSITORY_URL> \
--service-principal-client-id "$SERVICE_PRINCIPAL_CLIENT_ID" \
--service-principal-client-secret "$SERVICE_PRINCIPAL_CLIENT_SECRET" \
--service-principal-tenant-id "$AZURE_TENANT_ID"
--ingress external
إذا قمت بتكوين الدخول من خلال Dockerfile أو لا يتطلب تطبيقك الدخول، يمكنك حذف --ingress الخيار.
ينشئ الأمر up سير عمل GitHub Actions. نتيجة لذلك، إعادة تشغيل الأمر تؤدي إلى خلق عدة سير عمل غير مرغوب فيه. إذا كنت تريد نشر تغييرات على صورة تطبيقك، ادفع التغييرات إلى مستودع GitHub الخاص بك بدلا من إعادة تشغيل الأمر. يكتشف سير عمل GitHub تلقائيا التغييرات في مستودعك ثم يبني وينشر تطبيقك. لتغيير سير العمل، قم بتحرير ملف سير العمل في GitHub.
تكوين إعدادات تطبيق الحاوية
يوفر الأمر az containerapp up طريقة مبسطة لإنشاء ونشر تطبيقات الحاويات التي تستخدم الإعدادات الافتراضية بشكل أساسي. ومع ذلك، بعد استخدام الأمر up ، تحتاج إلى تشغيل أوامر Azure CLI أخرى مثل التالية إذا أردت تكوين إعدادات أكثر تقدما:
- وقت تشغيل التطبيقات الموزعة (DAPR):
az containerapp dapr enable - اسرار:
az containerapp secret set - بروتوكولات النقل:
az containerapp ingress update
إذا أردت تخصيص إعدادات أخرى لتطبيق الحاوية، مثل إعدادات الموارد أو التكبير، استخدم up أولا الأمر لنشر تطبيق الحاوية. ثم استخدم الأمر az containerapp update لتغيير هذه الإعدادات. الأمر az containerapp up ليس اختصارا للأمر az containerapp update .