إنشاء تطبيق App Service ونشر التعليمات البرمجية في مستودع Git محلي باستخدام Azure CLI

يقوم هذا البرنامج النصي النموذجي بإنشاء تطبيق في App Service بموارده ذات الصلة، ثم يقوم بنشر التعليمات البرمجية للتطبيق في مستودع Git المحلي.

إذا لم يكن لديك اشتراك Azure، فأنشئ حساب Azure مجاني قبل أن تبدأ.

المتطلبات الأساسية

نموذج البرنامج النصي

تشغيل Azure Cloud Shell

إن Azure Cloud Shell هو واجهة تفاعلية Shell مجانية يُمكنك استخدامها لتنفيذ الخطوات الواردة في هذه المقالة. يحتوي على أدوات Azure الشائعة والمثبتة مسبقًا والتي تم تكوينها للاستخدام مع حسابك.

لفتح Cloud Shell، ما عليك سوى تحديد "Try it" من الزاوية العليا اليسرى لكتلة التعليمة البرمجية. يمكنك أيضاً تشغيل Cloud Shell في علامة تبويب مستعرض منفصلة بالانتقال إلى https://shell.azure.com.

عند فتح Cloud Shell، تحقق من تحديد Bash لبيئتك. ستستخدم الجلسات اللاحقة Azure CLI في بيئة Bash، حدد نسخ لنسخ كتل التعليمات البرمجية، وألصقها في Cloud Shell، واضغط على Enter لتشغيلها.

تسجيل الدخول إلى Azure

يُصادق Cloud Shell تلقائياً بموجب الحساب الأولي الذي سُجل الدخول به. استخدم البرنامج النصي التالي لتسجيل الدخول باستخدام اشتراك مختلف، واستبدل <Subscription ID> بمعرّف اشتراك Azure الخاص بك. إذا لم يكن لديك اشتراك في Azure، فأنشئ حساب Azure مجاني قبل أن تبدأ.

subscription="<subscriptionId>" # add subscription here

az account set -s $subscription # ...or use 'az login'

لمزيد من المعلومات، راجع تعيين اشتراك نشط أو تسجيل الدخول بشكل تفاعلي

لإنشاء تطبيق الويب

# Create an App Service app with deployment from GitHub
# set -e # exit if error
# Variable block
let "randomIdentifier=$RANDOM*$RANDOM"
location="East US"
resourceGroup="msdocs-app-service-rg-$randomIdentifier"
tag="deploy-github.sh"
gitrepo=https://github.com/Azure-Samples/php-docs-hello-world # Replace the following URL with your own public GitHub repo URL if you have one
appServicePlan="msdocs-app-service-plan-$randomIdentifier"
webapp="msdocs-web-app-$randomIdentifier"

# Create a resource group.
echo "Creating $resourceGroup in "$location"..."
az group create --name $resourceGroup --location "$location" --tag $tag

# Create an App Service plan in `FREE` tier.
echo "Creating $appServicePlan"
az appservice plan create --name $appServicePlan --resource-group $resourceGroup --sku FREE

# Create a web app.
echo "Creating $webapp"
az webapp create --name $webapp --resource-group $resourceGroup --plan $appServicePlan

# Deploy code from a public GitHub repository. 
az webapp deployment source config --name $webapp --resource-group $resourceGroup \
--repo-url $gitrepo --branch master --manual-integration

# Use curl to see the web app.
site="http://$webapp.azurewebsites.net"
echo $site
curl "$site" # Optionally, copy and paste the output of the previous command into a browser to see the web app

للنشر إلى مستودع Git المحلي

  1. إنشاء المتغيرات التالية التي تحتوي على معلومات GitHub.

    gitdirectory=<Replace with path to local Git repo>
    username=<Replace with desired deployment username>
    password=<Replace with desired deployment password>
    
  2. تكوين Git المحلي والحصول على عنوان URL للتوزيع.

    url=$(az webapp deployment source config-local-git --name $webapp --resource-group $resourceGroup --query url --output tsv)
    
  3. أضف Azure remote إلى مستودع Git المحلي ودفع التعليمات البرمجية الخاصة بك. عند مطالبتك بكلمة مرور، استخدم قيمة $password التي حددتها.

    cd $gitdirectory
    git remote add azure $url
    git push azure main
    

تنظيف الموارد

استخدم الأمر التالي لإزالة مجموعة الموارد وجميع الموارد المقترنة بها باستخدام الأمر حذف مجموعة az - إلا إذا وُجدت حاجة مستمرة لهذه الموارد. قد يستغرق إنشاء بعض هذه الموارد بعض الوقت، وكذلك حذفها.

az group delete --name $resourceGroup

مرجع النموذج

يستخدم هذا البرنامج النصي الأوامر التالية. يرتبط كل أمر في الجدول بأمر وثائق معينة.

الأمر ملاحظات
az group create يُنشئ مجموعة موارد يتم فيها تخزين جميع الموارد.
az appservice plan create إنشاء خطة App Service.
az webapp create إنشاء تطبيق App Service.
az webapp deployment user set تعيين بيانات اعتماد النشر على مستوى الحساب لـ App Service.
az webapp deployment source config-local-git إنشاء تكوين عنصر تحكم مصدري لمستودع Git المحلي.

الخطوات التالية

لمزيد من المعلومات عن Azure CLI، راجع وثائق Azure CLI.

يمكن العثور على نماذج البرامج النصية الإضافية لـ CLI في ⁧⁩وثائق Azure App Service⁧⁩.