قم بتوصيل تطبيق خدمة التطبيقات بقاعدة بيانات SQL Database باستخدام CLI
يُنشئ هذا البرنامج النصي النموذجي قاعدة بيانات في Azure SQL Database وتطبيق خدمة التطبيقات. ثم يربط قاعدة البيانات بالتطبيق باستخدام إعدادات التطبيق.
إذا لم يكن لديك اشتراك Azure، فأنشئ حساب Azure مجاني قبل أن تبدأ.
المتطلبات الأساسية
استخدم بيئة Bash في Azure Cloud Shell. لمزيد من المعلومات، راجع تشغيل سريع لـ Azure Cloud Shell - Bash.
إذا كنت تفضل تشغيل أوامر مرجع CLI محلياً قم بتثبيت CLI Azure. إذا كنت تعمل على Windows أو macOS، ففكر في تشغيل Azure CLI في حاوية Docker. لمزيد من المعلومات، راجع كيفية تشغيل Azure CLI في حاوية Docker.
إذا كنت تستخدم تثبيت محلي، يُرجى تسجيل الدخول إلى Azure CLI مستخدمًا أمر az login. لإنهاء عملية المصادقة، التزم بالخطوات المعروضة في وحدتك الطرفية. للحصول على خيارات إضافية لتسجيل دخول، راجع تسجيل الدخول باستخدام Azure CLI.
عند مطالبتك، يوصى بتثبيت امتدادات Azure CLI عند الاستخدام الأول. لمزيد من المعلومات بشأن الامتدادات، راجع استخدام امتدادات مع Azure CLI.
يُرجى تشغيل إصدار az للوصول إلى الإصدار والمكتبات التابعة التي تم تثبيتها. للتحديث لآخر إصدار، يُرجى تشغيل تحديث az.
نموذج البرنامج النصي
تشغيل 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'
لمزيد من المعلومات، راجع تعيين اشتراك نشط أو تسجيل الدخول بشكل تفاعلي
تشغيل البرنامج النصي
# Connect an App Service app to SQL Database
# set -e # exit if error
# Variable block
let "randomIdentifier=$RANDOM*$RANDOM"
location="East US"
resourceGroup="msdocs-app-service-rg-$randomIdentifier"
tag="connect-to-sql.sh"
appServicePlan="msdocs-app-service-plan-$randomIdentifier"
webapp="msdocs-web-app-$randomIdentifier"
server="msdocs-azuresql-$randomIdentifier"
database="msdocsazuresqldb$randomIdentifier"
login="azureuser"
password="Pa$$w0rD-$randomIdentifier"
startIp="0.0.0.0"
endIp="0.0.0.0"
# Create a resource group.
echo "Creating $resourceGroup in "$location"..."
az group create --name $resourceGroup --location "$location" --tag $tag
# Create an App Service Plan
echo "Creating $appServicePlan"
az appservice plan create --name $appServicePlan --resource-group $resourceGroup \
--location "$location"
# Create a Web App
echo "Creating $webapp"
az webapp create --name $webapp --plan $appServicePlan --resource-group $resourceGroup
# Create a SQL Database server
echo "Creating $server"
az sql server create --name $server --resource-group $resourceGroup --location "$location" --admin-user $login --admin-password $password
# Configure firewall for Azure access
echo "Creating firewall rule with starting ip of $startIp" and ending ip of $endIp
az sql server firewall-rule create \
--server $server \
--resource-group $resourceGroup \
--name AllowYourIp \
--start-ip-address $startIp --end-ip-address $endIp
# Create a database called 'MySampleDatabase' on server
echo "Creating $database"
az sql db create --server $server \
--resource-group $resourceGroup --name $database \
--service-objective S0
# Get connection string for the database
connstring=$(az sql db show-connection-string --name $database --server $server \
--client ado.net --output tsv)
# Add credentials to connection string
connstring=${connstring//<username>/$login}
connstring=${connstring//<password>/$password}
# Assign the connection string to an app setting in the web app
az webapp config appsettings set --name $webapp \
--resource-group $resourceGroup \
--settings "SQLSRV_CONNSTR=$connstring"
تنظيف الموارد
استخدم الأمر التالي لإزالة مجموعة الموارد وجميع الموارد المقترنة بها باستخدام الأمر حذف مجموعة az - إلا إذا وُجدت حاجة مستمرة لهذه الموارد. قد يستغرق إنشاء بعض هذه الموارد بعض الوقت، وكذلك حذفها.
az group delete --name $resourceGroup
مرجع النموذج
يستخدم هذا البرنامج النصي الأوامر التالية لإنشاء مجموعة موارد وتطبيق خدمة التطبيقات وقاعدة بيانات SQL وجميع الموارد ذات الصلة. يرتبط كل أمر في الجدول بوثائق خاصة بأمر.
| الأمر | ملاحظات |
|---|---|
az group create |
يُنشئ مجموعة موارد يتم فيها تخزين جميع الموارد. |
az appservice plan create |
إنشاء خطة App Service. |
az webapp create |
ينشئ تطبيق App Service. |
az sql server create |
ينشئ خادماً. |
az sql db create |
إنشاء قاعدة بيانات جديدة. |
az sql db show-connection-string |
يؤدي إلى إنشاء سلسلة اتصال بقاعدة بيانات. |
az webapp config appsettings set |
يُنشئ أو يُحدِّث أحد إعدادات التطبيق لتطبيق App Service. يتم عرض إعدادات التطبيق كمتغيرات البيئة لتطبيقك. |
الخطوات التالية
لمزيد من المعلومات عن Azure CLI، راجع وثائق Azure CLI.
يمكن العثور على نماذج البرامج النصية الإضافية لـ CLI في وثائق Azure App Service.
