إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
تصف هذه المقالة كيفية إنشاء حزمة نشر .zip جاهزة للتشغيل، ونشر الحزمة على Azure، وتكوين تطبيق الوظائف الخاص بك ليعمل مباشرة من الحزمة. يمكنك النشر باستخدام دالات Azure Core Tools أو Azure CLI أو واجهات برمجة التطبيقات الخاصة ب REST الخاصة بالنشر.
النشر القائم على الحزم هو الوضع الافتراضي لتطبيقات الوظائف التي تعمل من الكود. تعتمد تقنية النشر وتكوين الحزم على خطة الاستضافة. اختر خطة الاستضافة الخاصة بك في أعلى هذا المقال.
يحتوي دالات Azure على مجموعة كاملة من خيارات النشر والتكامل المستمر التي توفرها "Azure App Service". للحصول على مزيدٍ من المعلومات، راجع التوزيع المستمر في دالات Azure.
خطة نشر الحزم حسب الاستضافة
يلخص الجدول التالي عملية النشر وتكوين الحزم لكل خطة استضافة:
| خطة الاستضافة | عملية التوزيع | تكوين الحزمة |
|---|---|---|
| خطة استهلاك Flex | نشر الحزم المدارة | يعمل من الحزمة المنتشرة بشكل افتراضي. لا تقم بتعيين WEBSITE_RUN_FROM_PACKAGE. |
| الخطة المتميزة | نشر ZIP | تم ضبطه WEBSITE_RUN_FROM_PACKAGE على 1 التشغيل من الحزمة المنشورة. |
| خطة مخصصة (خدمة التطبيقات) | نشر ZIP | تم ضبطه WEBSITE_RUN_FROM_PACKAGE على 1 التشغيل من الحزمة المنشورة. |
| خطة استهلاك على Windows | نشر ZIP | تم ضبطه WEBSITE_RUN_FROM_PACKAGE على 1 التشغيل من الحزمة المنشورة. |
| خطة الاستهلاك على لينكس | رابط البناء عن بعد أو الحزمة الخارجية | استخدم رابط حزمة خارجية لحزمة مبنية محليا. |
| Azure Container Apps | نشر صورة الحاوية | نشر الكود القائم على الحزم لا ينطبق. |
ملحوظة
المحتوى في هذا المقال غير مرتبط بخطة الاستضافة المختارة حاليا. لاختيار خطة مختلفة، استخدم أداة الاختيار في أعلى هذا المقال. لمقارنة جميع خطط الاستضافة، راجع خيارات استضافة دالات Azure.
تطبيقات الوظائف المستضافة على Azure Container Apps يتم نشرها كصور حاوية، وليس كحزم .zip. لإنشاء ونشر تطبيق وظيفة قائم على الصور، انظر إنشاء تطبيق وظيفة على Azure Container Apps باستخدام الكود.
إنشاء حزمة نشر
في معظم الحالات، لا تحتاج إلى إنشاء حزمة النشر بنفسك. هذه الطرق المعتمدة على الأدوات تنشئ الحزمة كجزء من عملية النشر:
- الأمر دالات Azure Core Tools
func azure functionapp publish. - تعليمة Visual Studio برمجية Pulishing.
- Visual Studio Publishing.
- GitHub Actions deployment، الذي يجمع مسار المشروع المكون.
بالنسبة لعملية Azure Pipelines النشر، تقوم خطوات بناء خط الأنابيب بإنشاء أرشيف .zip وتمريره إلى AzureFunctionApp مهمة النشر.
عندما تحتاج للعمل مباشرة مع حزمة نشر جاهزة للتشغيل، أنشئ الحزمة باستخدام func pack. على سبيل المثال، أنشئ الحزمة بنفسك عند النشر باستخدام رابط حزمة خارجي.
يمكنك أيضا إنشاء أرشيف .zip يدويا. عند إنشاء الأرشيف يدويا، اتبع متطلبات هيكل الحزم هذه.
متطلبات حزمة النشر
يجب أن يحتوي أرشيف zip الذي تنشره على جميع الملفات اللازمة لتشغيل تطبيق الوظائف. يمكنك إنشاء أرشيف مضغوط يدويا من محتويات مجلد مشروع Functions باستخدام وظيفة ضغط .zip المضمنة أو أدوات غير تابعة ل Microsoft.
يجب أن يتضمن الأرشيف ملف host.json في جذر المجلد المستخرج. ينشئ مكدس اللغة المحدد لتطبيق الوظائف متطلبات أخرى:
هام
بالنسبة للغات التي تنشئ إخراجا مجمعا للتوزيع، تأكد من ضغط محتويات مجلد الإخراج الذي تخطط لنشره وليس مجلد المشروع بأكمله. عندما تستخرج الدالات محتويات أرشيف zip، host.json يجب أن يكون الملف موجودا في جذر الحزمة.
تقوم عملية نشر zip باستخراج ملفات ومجلدات الأرشيف .zip في wwwroot المجلد. إذا أدرجت المجلد الأب عند إنشاء الأرشيف، فلن يجد النظام الملفات التي يتوقع رؤيتها في wwwroot.
نشر حزمة
يستخدم Flex Consumption نشر الحزم لتخزين حزمة جاهزة للتشغيل في حاوية تخزين النشر الخاصة بالتطبيق. التطبيق يعمل مباشرة من هذه الحزمة. لا تضبط WEBSITE_RUN_FROM_PACKAGE إعداد التطبيق.
نشر الحزمة باستخدام Core Tools أو تعليمة Visual Studio برمجية أو Azure CLI. تختار هذه الأدوات تلقائيا سلوك نشر الحزم الصحيح لتطبيق استهلاك مرن.
تقوم هذه الأدوات بنشر الدفع عن طريق إرسال الحزمة إلى نقطة نهاية نشر التطبيق. بالنسبة للاستهلاك المرن، ترسل هذه الأجهزة الطرد إلى /api/publish مضيف التطبيق scm . عندما تكون نقطة نهاية النشر قابلة للوصول فقط عبر نقطة نهاية خاصة، يجب أن يكون لدى الحاسوب أو المدير أو الوكيل الذي يقوم بالنشر اتصال شبكي وحل DNS لنقطة النشر الخاصة. تخزن خدمة النشر الحزمة المعالجة في حاوية النشر المكونة؛ رفع الطرد مباشرة إلى هذه الحاوية لا يؤدي إلى نشرها. للنشر دون الحاجة للانتقال من العميل المبادر إلى نقطة النشر النهائية، استخدم قالب نشر Bicep أو ARM مع رابط حزمة يمكن لخدمة النشر الوصول إليه.
توزيع باستخدام Azure CLI
استخدم الأمر az functionapp deployment source config-zip لنشر الحزمة:
az functionapp deployment source config-zip --resource-group <RESOURCE_GROUP> \
--name <APP_NAME> --src <ZIP_FILE_PATH>
أضف --build-remote true عندما يتطلب مشروع المصدر بناء عن بعد. لا تطلب بناء عن بعد لحزمة مدمجة func pack بالفعل في حالة جاهزة للتشغيل، مثل حزمة نشر Go.
لتكوين تخزين النشر أو استعادة نشر سابق، راجع إنشاء وإدارة تطبيقات الوظائف في خطة الاستهلاك المرن.
نشر حزمة
تستخدم تطبيقات خطط Premium، Deمخصص، وخطة استهلاك واجهة برمجة تطبيقات نشر zip. تقوم خدمة النشر بتنفيذ هذه الإجراءات:
- احذف الملفات المتبقية من النشرات السابقة.
- شغل سكريبتات النشر وتعديلات النشر الأخرى.
- اكتب سجلات النشر.
- وظيفة المزامنة تفعل.
هام
في النشر بنظام zip، يتم حذف أو تحديث الملفات من النشر السابق عندما كانت جزءا من ذلك النشر. تحتفظ عملية النشر بملفات وأدلة أخرى في تطبيق الوظيفة لم تكن جزءا من النشر السابق. لتفاصيل التنفيذ، راجع مرجع نشر zip.
توزيع باستخدام Azure CLI
استخدم Azure CLI لتفعيل انتشار دفع. توزيع ملف .zip هذا إلى تطبيق الدالة باستخدام أمر تكوين مصدر توزيع functionapp az. لاستخدام هذا الأمر، يجب استخدام الإصدار 2.0.21 من Azure CLI أو إصدار أحدث. لمعرفة إصدار Azure CLI الذي تستخدمه، استخدم az --version الأمر .
في الأمر التالي، استبدل <zip_file_path> العنصر النائب بالمسار إلى موقع ملف .zip. وكذلك استبدل <app_name> باسم تطبيق فريد للوظيفة الخاصة بك واستبدل <resource_group> باسم مجموعة الموارد الخاصة بك.
az functionapp deployment source config-zip -g <resource_group> -n \
<app_name> --src <zip_file_path>
يقوم هذا الأمر بنشر ملفات المشروع من ملف .zip إلى تطبيق الوظيفة الخاص بك في Azure ويعيد تشغيل التطبيق.
عند استخدام Azure CLI على الكمبيوتر المحلي، <zip_file_path> يكون المسار إلى ملف .zip على الكمبيوتر الخاص بك. يمكنك أيضًا تشغيل Azure CLI في Azure Cloud Shell. عند استخدام Cloud Shell، يجب عليك أولاً تحميل ملف التوزيع .zip إلى حساب ملفات Azure المقترن بـCloud Shell. في هذه الحالة، <zip_file_path> هو موقع التخزين الذي يستخدمه حساب Cloud Shell. لمزيدٍ من المعلومات، اطلع على ملفات المتابعة في Azure Cloud Shell.
توزيع ملف ZIP باستخدام واجهات برمجة تطبيقات REST
يمكنك استخدام واجهات برمجة تطبيقات REST لخدمة التوزيع لتوزيع ملف .zip إلى تطبيقك في Azure. للنشر، أرسل طلب POST إلى https://<app_name>.scm.azurewebsites.net/api/zipdeploy. يجب أن يحتوي طلب POST على ملف .zip في نص الرسالة. يتم توفير بيانات اعتماد النشر لتطبيقك في الطلب باستخدام مصادقة HTTP الأساسية. لمزيد من المعلومات، راجع مرجع توزيع الدفع بتنسيق zip.
للحصول على مصادقة HTTP BASIC، تحتاج إلى بيانات اعتماد نشر خدمة التطبيق. لمعرفة كيفية تعيين بيانات اعتماد النشر، راجع تعيين وإعادة تعيين بيانات الاعتماد على مستوى المستخدم.
مع cURL
يستخدم المثال التالي أداة cURL لتوزيع ملف .zip. استبدل العناصر النائبة <deployment_user>، و<zip_file_path> و<app_name>. عندما يطلب منك cURL كتابة كلمة المرور، اكتب كلمة المرور.
curl -X POST -u <deployment_user> --data-binary "@<zip_file_path>" https://<app_name>.scm.azurewebsites.net/api/zipdeploy
يؤدي هذا الطلب إلى نشر الدفع من ملف .zip الذي تم تحميله. يمكنك مراجعة عمليات التوزيع الحالية والسابقة باستخدام نقطة النهاية https://<app_name>.scm.azurewebsites.net/api/deployments، كما هو موضح في مثال cURL التالي. مرة أخرى، استبدل <app_name> باسم التطبيق الخاص بك و<deployment_user> باسم المستخدم الخاص ببيانات اعتماد النشر الخاصة بك.
curl -u <deployment_user> https://<app_name>.scm.azurewebsites.net/api/deployments
التوزيع المضغوط غير المتزامن
أثناء النشر بشكل متزامن، قد تتلقى أخطاء تتعلق بمهلات الاتصال. أضف ?isAsync=true إلى عنوان URL للتوزيع بشكل غير متزامن. تتلقى استجابة بمجرد تحميل الملف المضغوط مع Location عنوان يشير إلى عنوان URL لحالة النشر القابل للاستقصاء. عند التحقق من عنوان URL المتوفر في Location العنوان، تتلقى استجابة HTTP 202 (Accepted) أثناء استمرار العملية واستجابة HTTP 200 (OK) بمجرد توسيع الأرشيف واكتمال النشر بنجاح.
مصادقة Microsoft Entra
بديل لاستخدام مصادقة HTTP BASIC لنشر zip هو استخدام هوية Microsoft Entra. قد تكون هناك حاجة إلى هوية Microsoft Entra إذا تم تعطيل مصادقة HTTP BASIC لموقع SCM.
مطلوب رمز مميز صالح للوصول إلى Microsoft Entra للمستخدم أو كيان الخدمة الذي يقوم بالنشر. يمكن استرداد رمز الوصول باستخدام الأمر az account get-access-token في Azure CLI. يتم استخدام الرمز المميز للوصول في عنوان المصادقة لطلب HTTP POST.
curl -X POST \
--data-binary "@<zip_file_path>" \
-H "Authorization: Bearer <access_token>" \
"https://<app_name>.scm.azurewebsites.net/api/zipdeploy"
باستخدام PowerShell
يستخدم المثال التالي Publish-AzWebapp لتحميل ملف .zip. استبدل العناصر النائبة <group-name>، و<app-name> و<zip-file-path>.
Publish-AzWebapp -ResourceGroupName <group-name> -Name <app-name> -ArchivePath <zip-file-path>
يؤدي هذا الطلب إلى نشر الدفع من ملف .zip الذي تم تحميله.
لمراجعة عمليات التوزيع الحالية والسابقة، قم بتشغيل الأوامر التالية. مرة أخرى، استبدل العناصر النائبة <deployment-user> و<deployment-password> و<app-name>.
$username = "<deployment-user>"
$password = "<deployment-password>"
$apiUrl = "https://<app-name>.scm.azurewebsites.net/api/deployments"
$base64AuthInfo = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(("{0}:{1}" -f $username, $password)))
$userAgent = "powershell/1.0"
Invoke-RestMethod -Uri $apiUrl -Headers @{Authorization=("Basic {0}" -f $base64AuthInfo)} -UserAgent $userAgent -Method GET
Deploy باستخدام Bicep أو قالب Azure Resource Manager
يمكنك نشر حزمة في تطبيق Flex Consumption كجزء من نشر قالب Bicep أو Azure Resource Manager (ARM). حدد موردا Microsoft.Web/sites/extensions يستخدم الامتداد /onedeploy ويوفر رابط الحزمة البعيد في الخاصية packageUri .
يجب أن تسمي ملف الطرد released-package.zip. يجب أن يكون مضيف الوظائف قادرا على الوصول إلى كل من رابط الحزمة البعيدة وحاوية تخزين النشر. رفع الحزمة مباشرة إلى حاوية النشر لا ينشر الجهاز.
لأمثلة قوالب Bicep وARM، انظر تعريف حزمة نشر استهلاك المرن.
النشر باستخدام قالب Azure Resource Manager
يمكنك استخدام إضافة قالب Azure Resource Manager (ARM) ZipDeploy لدفع ملف .zip إلى تطبيق الدالة.
مثال على قالب ARM لديبليبيل
يتضمن هذا القالب كلا من فتحة الإنتاج والتقسيم المرحلي وينشر إلى واحد أو آخر. عادة، تستخدم هذا القالب للنشر في فتحة التجهيز ثم التبديل لتشغيل حزمة الملف البري الجديدة على خانة الإنتاج.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"appServiceName": {
"type": "string"
},
"deployToProduction": {
"type": "bool",
"defaultValue": false
},
"slot": {
"type": "string",
"defaultValue": "staging"
},
"packageUri": {
"type": "secureString"
}
},
"resources": [
{
"condition": "[parameters('deployToProduction')]",
"type": "Microsoft.Web/sites/extensions",
"apiVersion": "2021-02-01",
"name": "[format('{0}/ZipDeploy', parameters('appServiceName'))]",
"properties": {
"packageUri": "[parameters('packageUri')]",
"appOffline": true
}
},
{
"condition": "[not(parameters('deployToProduction'))]",
"type": "Microsoft.Web/sites/slots/extensions",
"apiVersion": "2021-02-01",
"name": "[format('{0}/{1}/ZipDeploy', parameters('appServiceName'), parameters('slot'))]",
"properties": {
"packageUri": "[parameters('packageUri')]",
"appOffline": true
}
}
]
}
في النشر الأولي، تقوم بالنشر مباشرة إلى فتحة الإنتاج. لمزيد من المعلومات، راجع عمليات نشر الفتحة.
تشغيل دالات من حزمة التوزيع
التشغيل المباشر من حزمة النشر يتجاوز نسخ الملفات إلى wwwroot المجلد. بدلا من ذلك، يقوم وقت تشغيل الدوال بتركيب الحزمة كدليل للقراءة فقط wwwroot . هذا النهج:
- يقلل من مشاكل قفل نسخ الملفات.
- التحقق من الملفات التي يتم تشغيلها في تطبيقك.
- يحسن أداء نشر Azure Resource Manager.
- يمكن تقليل وقت التشغيل البارد، خاصة لتطبيقات جافا سكريبت التي تحتوي على أشجار حزم npm كبيرة.
تكوين حزمة استهلاك مرن
تطبيقات الاستهلاك المرن تعمل من حزمة بشكل افتراضي. لا تضيف WEBSITE_RUN_FROM_PACKAGE إعداد التطبيق. إعدادات النشر، بما في ذلك حاوية التخزين وطريقة المصادقة الخاصة بها، هي خصائص لمورد تطبيق الوظائف. لمزيد من المعلومات، راجع النشر.
تكوين الحزمة المميزة والمخصصة
تم ضبطه WEBSITE_RUN_FROM_PACKAGE ليعمل 1 مباشرة من الحزمة المنشورة محليا. يقوم وقت التشغيل بتخزين الحزمة في c:\home\data\SitePackages المجلد على Windows أو /home/data/SitePackages في المجلد على لينكس.
تكوين حزمة الاستهلاك
تعتمد القيمة المدعومة WEBSITE_RUN_FROM_PACKAGE على نظام التشغيل:
| نظام التشغيل | قيمة | السلوك |
|---|---|---|
| Windows | 1 |
التطبيق يعمل من حزمة في المجلد c:\home\data\SitePackages . |
| Linux | <URL> |
التطبيق يعمل من الحزمة عند الرابط المحدد. استخدم حاوية مساحة تخزين Azure Blob الخاصة التي يتم الوصول إليها باستخدام هوية مدارة. |
هام
التطبيقات التي لا تزال تعمل بنظام v3 نهاية عمر التشغيل على لينكس ضمن خطة استهلاك تتوقف عن العمل بعد 30 سبتمبر 2026. لتجنب تعطيل الخدمة، قم بترحيل تطبيقك إلى وقت التشغيل v4.
سيتم التقاعد في 30 سبتمبر 2028 من خيار استضافة تطبيقات الوظائف على لينكس ضمن خطة الاستهلاك. خطة استهلاك لينكس لا تحصل على ميزات جديدة أو إصدارات لغوية جديدة. التطبيقات التي تعمل على Windows في خطة استهلاك غير متأثرة حاليا. قم بنقل تطبيقاتك إلى خطة الاستهلاك المرن قبل تاريخ التقاعد.
اعتبارات نشر الحزم
ضع هذه المتطلبات والقيود في اعتبارك عند نشر وتشغيل تطبيق الوظيفة من حزمة ما:
- يجب أن تستخدم الحزمة .zip الصيغة. تنسيقات Tar وgzip غير مدعومة.
- الحد الأقصى لحجم العبوة هو 1 جيجابايت. يستخدم النشر مساحة تخزين مؤقتة عند فك ملفات المشروع، لذا يجب أن يكون لدى التطبيق مساحة تخزين مؤقتة كافية. توفر خطة الاستهلاك 500 ميجابايت من التخزين المؤقت لكل خطة.
- عندما تعمل من حزمة، تكون الملفات في الداخل
wwwrootقابلة للقراءة فقط، بما في ذلك في بوابة Azure. - لا يمكنك استخدام ذاكرة التخزين المؤقت المحلية عند تشغيلها من حزمة.
- لا تحدد
WEBSITE_RUN_FROM_PACKAGEمتى تطلب بناء عن بعد. بدلا من ذلك، اضبطSCM_DO_BUILD_DURING_DEPLOYMENT=true. على لينكس، أيضا تم تعيينENABLE_ORYX_BUILD=true. -
WEBSITE_RUN_FROM_PACKAGEلا يعمل مع MSDeploy. استخدم نشر zip بدلا من ذلك.
إضافة إعداد WEBSITE_RUN_FROM_PACKAGE
توجد عدة طرق يمكنك من خلالها إضافة إعدادات تطبيق الوظائف وتحديثها وحذفها:
تتطلب التغييرات في إعدادات تطبيق الوظائف إعادة تشغيل تطبيق الوظائف.
تشغيل من حزمة تم رفعها بواسطة النشر عبر zip
قم بتعيين WEBSITE_RUN_FROM_PACKAGE قبل 1 نشر الحزمة. تقوم واجهة برمجة تطبيقات نشر zip بنسخ الحزمة إلى المجلد SitePackages بدلا من استخراج محتوياتها إلى wwwroot. كما ينشئ النشر ملف packagename.txt يحدد الحزمة التي سيتم تركيبها. بعد إعادة تشغيل التطبيق، يتم تركيب الحزمة كدليل للقراءة فقط wwwroot . تطبيقات استهلاك لينكس لا تدعم هذه القيمة ويجب أن تعمل من رابط حزمة خارجي.
عند إعادة تشغيل التطبيق، تنتهي عمليات تنفيذ الوظائف الجارية حاليا. للحصول على معلومات حول دوال الكتابة التي تتعامل مع عمليات إعادة التشغيل بأمان، انظر "كتابة الدوال لتكون بلا حالة".
تشغيل من رابط حزمة خارجية
استخدم رابط حزمة خارجية عندما تحتاج لإدارة تخزين الحزم بنفسك. تحتاج إلى هذا الخيار لتشغيل حزمة مبنية محليا على تطبيق استهلاك لينكس. هذا غير مدعوم على Flex Consumption.
ملحوظة
لا يمكنك تغيير تطبيق وظيفي موجود يستخدم WEBSITE_RUN_FROM_PACKAGE=1 ليعمل من رابط حزمة خارجية. لاستخدام رابط حزمة خارجي، أنشئ تطبيق وظيفة جديد وقم بتعيين WEBSITE_RUN_FROM_PACKAGE عنوان URL الخاص بالحزمة (PACKAGE).
استخدم حاوية مخزن البيانات الثنائية الكبيرة خاصة وامنح تطبيق الوظيفة هوية الإدارة الوصول إلى الحزمة. استخدم الهوية المدارة لأن رموز SAS تنتهي صلاحيتها وتحتاج إلى صيانة. كلما نشرت حزمة محدثة، يجب عليك مزامنة المحفزات يدويا. إذا قمت بتحديث الحزمة في مكانها دون تغيير رابط الرابط، أعد تشغيل تطبيق الوظائف قبل أن تقوم بمزامنة المشغلات.
Manually upload a package to مساحة تخزين Azure Blob
أنشئ حزمة نشر .zip.
في مدخل Azure انتقل إلى حساب التخزين الخاص بك.
تحت قسم تخزين البيانات، اختر الحاويات، ثم أنشئ أو اختر حاوية خاصة.
ارفع الطرد إلى الحاوية.
اختر الكتلة المرفوعة وانسخ رابطها. إذا لم تستخدم هوية مدارة، قم بإنشاء رابط SAS بدلا من ذلك.
في تطبيق الوظائف الخاص بك، قم بتوسيع الإعدادات، واختر متغيرات البيئة، ثم اختر إضافة في تبويب إعدادات التطبيق .
أضف إعدادا باسم
WEBSITE_RUN_FROM_PACKAGEعنوان URL للحزمة كقيمة له.قم بتطبيق التغييرات، وإعادة تشغيل التطبيق، ومزامنة المحفزات يدويا.
Fetch a package from مساحة تخزين Azure Blob باستخدام هوية مدارة
يمكنك تكوين مساحة تخزين Azure Blob لتفويض الطلبات تفويض باستخدام Microsoft Entra ID. يعني هذا التكوين أنه بدلا من إنشاء مفتاح SAS مع انتهاء الصلاحية، يمكنك بدلا من ذلك الاعتماد على الهوية المدارة للتطبيق.
بشكل افتراضي، يتم استخدام الهوية المعينة من قبل النظام للتطبيق. إذا كنت ترغب في تحديد هوية معيّنة من قبل المستخدم، يمكنك ضبط إعداد التطبيق WEBSITE_RUN_FROM_PACKAGE_BLOB_MI_RESOURCE_ID على معرّف المورد لتلك الهوية. يمكن أن يقبل SystemAssigned الإعداد أيضا كقيمة، وهو ما يعادل حذف الإعداد.
لتمكين إحضار الحزمة باستخدام الهوية:
تأكد من تكوين الكائن الثنائي كبير الحجم للوصول الخاص.
امنح الهوية دور قارئ بيانات كائن ثنائي كبير الحجم للتخزين مع نطاق عبر الكائن الثنائي كبير الحجم للحزمة. راجع تعيين دور Azure للوصول إلى بيانات blob للحصول على تفاصيل حول إنشاء تعيين الدور.
قم بتعيين إعداد التطبيق
WEBSITE_RUN_FROM_PACKAGEإلى عنوان URL للكائن الثنائي كبير الحجم للحزمة. عادة ما يكون عنوان URL هذا من النموذجhttps://<storage-account-name>.blob.core.windows.net/<container-name>/<path-to-package>أو ما شابه ذلك.إذا كنت ترغب في تحديد هوية معيّنة من قبل المستخدم، يمكنك ضبط إعداد التطبيق
WEBSITE_RUN_FROM_PACKAGE_BLOB_MI_RESOURCE_IDعلى معرّف المورد لتلك الهوية. يمكن للإعداد أيضا قبول SystemAssigned كقيمة، رغم أن هذا يعادل حذف الإعداد تماما. معرف الموارد هو تمثيل قياسي لمورد في Azure. بالنسبة لهوية مدارة معينة من قبل المستخدم، ستكون/subscriptions/subid/resourcegroups/rg-name/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity-name. يمكن الحصول على معرف مورد الهوية المدارة المعينة من قبل المستخدم في معرفخصائص>الإعدادات>للهوية المدارة المعينة للمستخدم.
تخصيص التوزيع
تفترض عملية التوزيع أن ملف .zip الذي تدفعه يحتوي على تطبيق جاهز للتشغيل. لا يتم تشغيل أي تخصيصات افتراضيًا. لتمكين نفس عمليات البناء التي تحصل عليها من خلال التكامل المستمر، أضف ما يلي إلى إعدادات التطبيق الخاص بك:
SCM_DO_BUILD_DURING_DEPLOYMENT=true
عند استخدام توزيع الدفع .zip، يكون هذا الإعداد خطأ افتراضيًا. الإعداد الافتراضي صحيح بالنسبة إلى عمليات توزيع التكامل المستمر. عند التعيين إلى صحيح، يتم استخدام الإعدادات المتعلقة بالتوزيع أثناء التوزيع. يمكنك تكوين هذه الإعدادات إما كإعدادات التطبيق أو في ملف تكوين التوزيع الموجود في جذر ملف zip. لمزيد من المعلومات، راجع الإعدادات المتعلقة بالمستودع والتوزيع في مرجع التوزيع.
تنزيل ملفات تطبيق الوظائف
إذا كنت بحاجة إلى الحزمة الدقيقة التي يعمل بها تطبيقك حاليا، قم بتحميلها من حاوية مخزن البيانات الثنائية الكبيرة المهيأة لنشر تطبيقك:
في صفحة تطبيق الوظائف الخاص بك في بوابة Azure، قم بتوسيع الإعدادات، ثم اختر إعدادات النشر.
تحت موقع حزمة التطبيق، لاحظ حساب التخزين والحاوية المستخدمة في عمليات النشر.
اذهب إلى حساب التخزين هذا، وسع تخزين البيانات، ثم اختر الحاويات.
اختر حاوية النشر، ثم اختر الحزمة الحالية، ثم اختر التحميل.
الحزمة التي تم تنزيلها تحتوي على محتوى التطبيق المبني الذي قمت بنشره، والذي قد يختلف عن مشروعك المصدر. كل نشر يكتب فوق الحزمة الحالية، وحاوية النشر لا توفر سجل نشر.
بالنسبة للتطبيقات التي تم نشرها باستخدام CI/CD، احتفظ بمشروع المصدر تحت سيطرة المصدر واحتفظ بتشويلات البناء الجاهزة للتشغيل وفقا لسياسة الاحتفاظ بالإصدارات الخاصة بك. استخدم قطعة أثرية محتفظة لإعادة نشر إصدار معين. استخدم الحزمة في حاوية النشر عندما تحتاج إلى الحزمة الدقيقة التي يعمل بها التطبيق حاليا أو عندما لا يكون العنصر الأصلي متاحا.
تنزيل ملفات تطبيق الوظائف
إذا قمت بإنشاء وظائف باستخدام المحرر في مدخل Azure، يمكنك تنزيل مشروع تطبيق الدالة الموجود كملف .zip بإحدى الطرق التالية:
سجل الدخول في مدخل Microsoft Azure، ثم انتقل إلى تطبيق الوظائف الخاص بك.
في علامة تبويب نظرة عامة، حدد تنزيل محتوى التطبيق. حدد خيارات التنزيل، ثم حدد تنزيل.
ملف مضغوط .zip الذي تم تنزيله بالتنسيق الصحيح لإعادة توزيعه إلى تطبيق الوظائف باستخدام دفع التوزيع .zip. يمكن أيضًا تنزيل المدخل إضافة الملفات اللازمة لفتح التطبيق وظيفة مباشرة في Visual Studio.
بالنسبة للتطبيقات التي تم نشرها باستخدام CI/CD، احتفظ بمشروع المصدر تحت سيطرة المصدر واحتفظ بتشويلات البناء الجاهزة للتشغيل وفقا لسياسة الاحتفاظ بالإصدارات الخاصة بك. الأرشيف المصدري الذي تم تنزيله من مستودع ليس حزمة نشر. استخدم سير عمل النشر الخاص بك لبناء ونشر المشروع.