البرنامج التعليمي: أنشئ تطبيقًا متعدد الحاويات (معاينة) في تطبيق الويب للحاويات
إشعار
ستنجح حاويات Sidecar (معاينة) في تطبيقات متعددة الحاويات في App Service. للبدء، راجع البرنامج التعليمي: تكوين حاوية sidecar للحاوية المخصصة في Azure App Service (معاينة).
يوفر تطبيق الويب للحاوياتطريقة مرنة لاستخدام صور Docker. في هذا البرنامج التعليمي، سوف تتعلم كيفية إنشاء تطبيق متعدد الحاويات باستخدام WordPress وMySQL. سوف تكمل البرنامج التعليمي هذا في Cloud Shell، ولكن يمكنك أيضًا تشغيل هذه الأوامر محليًّا باستخدام أداة سطر أوامر Azure CLI (2.0.32 أو أحدث).
في هذا البرنامج التعليمي، تتعلم كيفية:
- تحويل تكوين Docker Compose للعمل مع تطبيق ويب للحاويات
- نشر تطبيق متعدد الحاويات على Azure
- إضافة إعدادات التطبيق
- استخدام التخزين المستمر للحاويات الخاصة بك
- الاتصال بـ Azure Database for MySQL
- استكشاف الأخطاء وإصلاحها
إذا لم يكن لديك اشتراك في Azure، فأنشئ حساب Azure مجاني قبل أن تبدأ.
المتطلبات الأساسية
لإكمال هذا البرنامج التعليمي، تحتاج إلى خبرة في Docker Compose.
تنزيل العينة
في هذا البرنامج التعليمي، يمكنك استخدام ملف الإنشاء من Docker، ولكنك ستقوم بتعديله ليشمل Azure Database for MySQL، والتخزين الدائم، وRedis. يمكن العثور على ملف التكوين في عينات Azure. في النموذج أدناه، لاحظ أنه depends_on
خيار غير مدعوم ويتم تجاهله. للحصول على خيارات التكوين المعتمدة، راجع خيارات إنشاء Docker .
version: '3.3'
services:
db:
image: mysql:5.7
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: somewordpress
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress
wordpress:
depends_on:
- db
image: wordpress:latest
ports:
- "8000:80"
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
volumes:
db_data:
في Cloud Shell، أنشئ دليلاً تعليميًّا ثم انتقل إليه.
mkdir tutorial
cd tutorial
بعد ذلك، قم بتشغيل الأمر التالي لاستنساخ نموذج مستودع التطبيق إلى دليل البرنامج التعليمي الخاص بك. ثم غيّر إلى multicontainerwordpress
الدليل.
git clone https://github.com/Azure-Samples/multicontainerwordpress
cd multicontainerwordpress
إنشاء مجموعة موارد
مجموعة الموارد هي حاوية منطقية يتم فيها نشر موارد Azure وإدارتها، مثل تطبيقات الويب وقواعد البيانات وحسابات التخزين. على سبيل المثال، يمكنك اختيار حذف مجموعة الموارد بأكملها في خطوة واحدة بسيطة لاحقاً.
في Cloud Shell أنشئ مجموعة موارد باستخدامaz group create
الأمر. ينشئ المثال التالي مجموعة موارد تسمى myResourceGroup في منطقة جنوب وسط الولايات المتحدة. لمشاهدة جميع المواقع المدعومة لخدمة التطبيقات على Linux في المستوى القياسي، قم بتشغيلaz appservice list-locations --sku S1 --linux-workers-enabled
الأمر.
az group create --name myResourceGroup --location "South Central US"
يمكنك بشكل عام إنشاء مجموعة مواردك والموارد في منطقة قريبة منك.
عند انتهاء الأمر، يظهر لك إخراج JSON خصائص مجموعة الموارد.
إنشاء خطة خدمة تطبيق Azure
في Cloud Shell، أنشئ خطة خدمة التطبيق في مجموعة الموارد باستخدام الأمر az appservice plan create
.
ينشئ المثال التالي خطة خدمة التطبيق المسماة myAppServicePlan
في مستويات التسعير القياسي(--sku S1
) وفي حاوية Linux (--is-linux
).
az appservice plan create --name myAppServicePlan --resource-group myResourceGroup --sku S1 --is-linux
عند إنشاء خطة خدمة التطبيق، تعرض Cloud Shell معلومات مشابهة للمثال التالي:
{ "adminSiteName": null, "appServicePlanName": "myAppServicePlan", "geoRegion": "South Central US", "hostingEnvironmentProfile": null, "id": "/subscriptions/0000-0000/resourceGroups/myResourceGroup/providers/Microsoft.Web/serverfarms/myAppServicePlan", "kind": "linux", "location": "South Central US", "maximumNumberOfWorkers": 1, "name": "myAppServicePlan", < JSON data removed for brevity. > "targetWorkerSizeId": 0, "type": "Microsoft.Web/serverfarms", "workerTierName": null }
يؤلف Docker مع WordPress وحاويات MySQL
إنشاء تطبيق Docker Compose
في Cloud Shell، إنشاء تطبيق ويب متعدد الحاويات في myAppServicePlan
خطة خدمات التطبيق باستخدام الأمر إنشاء تطبيق ويبaz. لا تنسَ استبدال<اسم التطبيق>باسم تطبيق فريد.
az webapp create --resource-group myResourceGroup --plan myAppServicePlan --name <app-name> --multicontainer-config-type compose --multicontainer-config-file docker-compose-wordpress.yml
عند إنشاء تطبيق الويب، تعرض Cloud Shell مخرجات مشابهة للمثال التالي:
{ "additionalProperties": {}, "availabilityState": "Normal", "clientAffinityEnabled": true, "clientCertEnabled": false, "cloningInfo": null, "containerSize": 0, "dailyMemoryTimeQuota": 0, "defaultHostName": "<app-name>.azurewebsites.net", "enabled": true, < JSON data removed for brevity. > }
استعرض التطبيق
استعراض للوصول إلى التطبيق المنشور على (http://<app-name>.azurewebsites.net
). قد يستغرق تحميل التطبيق بضع دقائق. إذا تلقيت خطأ، فانتظر بضع دقائق إضافية ثم قم بتحديث المستعرض. إذا كنت تواجه مشكلة وترغب في استكشاف الأخطاء وإصلاحها، فراجع سجلات الحاوية.
تهانينا، لقد أنشأت تطبيقاً متعدد الحاويات في تطبيق الويب للحاويات. بعد ذلك، ستقوم بتكوين التطبيق الخاص بك لاستخدام Azure Database for MySQL. لا تقم بتثبيت WordPress في هذا الوقت.
الاتصال بقاعدة بيانات الإنتاج
لا يُنصح باستخدام حاويات قاعدة البيانات في بيئة إنتاج. الحاويات المحلية غير قابلة للتحجيم. بدلاً من ذلك، ستستخدم Azure Database for MySQL التي يمكن تحجيمها.
إنشاء خادم Azure Database for MySQL
إنشاء قاعدة بيانات Azure لخادم MySQL باستخدام az mysql server create
الأمر.
في الأمر التالي، استبدل اسم خادم MySQL حيث ترى <mysql-server-name> >بعنصر نائب (الأحرف الصالحة هي، a-z
و0-9
و-
). هذا الاسم جزء من اسم مضيف خادم MySQL (<mysql-server-name>.database.windows.net
)، يجب أن يكون فريدًا بصورة عامة.
az mysql server create --resource-group myResourceGroup --name <mysql-server-name> --location "South Central US" --admin-user adminuser --admin-password My5up3rStr0ngPaSw0rd! --sku-name B_Gen5_1 --version 5.7
قد يستغرق إنشاء الخادم بضع دقائق حتى يكتمل. عند إنشاء خادم MySQL، تعرض Cloud Shell معلومات مشابهة للمثال التالي:
{ "administratorLogin": "adminuser", "administratorLoginPassword": null, "fullyQualifiedDomainName": "<mysql-server-name>.database.windows.net", "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.DBforMySQL/servers/<mysql-server-name>", "location": "southcentralus", "name": "<mysql-server-name>", "resourceGroup": "myResourceGroup", ... }
تكوين جدار حماية الخادم
في Cloud Shell، أنشئ قاعدة جدار حماية لخادم MySQL لإتاحة اتصالات العميل باستخدام الأمر az mysql server firewall-rule create
. عند تعيين كل من IP بدء تشغيل وIP النهاية إلى 0.0.0.0، يتم فتح جدار الحماية فقط لموارد Azure الأخرى.
az mysql server firewall-rule create --name allAzureIPs --server <mysql-server-name> --resource-group myResourceGroup --start-ip-address 0.0.0.0 --end-ip-address 0.0.0.0
تلميح
ويمكن أن تكون أكثر تقييدًا في قاعدة جدار الحماية باستخدام عناوين IP الصادرة فقط التي يستخدمها التطبيق.
إنشاء قاعدة بيانات WordPress
az mysql db create --resource-group myResourceGroup --server-name <mysql-server-name> --name wordpress
عند إنشاء قاعدة البيانات، تعرض Cloud Shell معلومات مشابهة للمثال التالي:
{ "additionalProperties": {}, "charset": "latin1", "collation": "latin1_swedish_ci", "id": "/subscriptions/12db1644-4b12-4cab-ba54-8ba2f2822c1f/resourceGroups/myResourceGroup/providers/Microsoft.DBforMySQL/servers/<mysql-server-name>/databases/wordpress", "name": "wordpress", "resourceGroup": "myResourceGroup", "type": "Microsoft.DBforMySQL/servers/databases" }
تكوين متغيرات قاعدة البيانات في WordPress
لتوصيل تطبيق WordPress بخادم MySQL الجديد هذا، ستقوم بتكوين بعض متغيرات البيئة الخاصة بـ WordPress، بما في ذلك مسار SSL CA المحدد بواسطةMYSQL_SSL_CA
. يتم توفير جذر بالتيمور CyberTrust من DigiCert في الصورة المخصصة أدناه.
لإجراء هذه التغييرات، استخدم الأمر az webapp config appsettings set في Cloud Shell. إعدادات التطبيق حساسة لحالة الأحرف ومفصولة بمسافة.
az webapp config appsettings set --resource-group myResourceGroup --name <app-name> --settings WORDPRESS_DB_HOST="<mysql-server-name>.mysql.database.azure.com" WORDPRESS_DB_USER="adminuser" WORDPRESS_DB_PASSWORD="My5up3rStr0ngPaSw0rd!" WORDPRESS_DB_NAME="wordpress" MYSQL_SSL_CA="BaltimoreCyberTrustroot.crt.pem"
عند إنشاء إعداد التطبيق، تعرض Cloud Shell معلومات مشابهة للمثال التالي:
[ { "name": "WORDPRESS_DB_HOST", "slotSetting": false, "value": "<mysql-server-name>.mysql.database.azure.com" }, { "name": "WORDPRESS_DB_USER", "slotSetting": false, "value": "adminuser" }, { "name": "WORDPRESS_DB_NAME", "slotSetting": false, "value": "wordpress" }, { "name": "WORDPRESS_DB_PASSWORD", "slotSetting": false, "value": "My5up3rStr0ngPaSw0rd!" }, { "name": "MYSQL_SSL_CA", "slotSetting": false, "value": "BaltimoreCyberTrustroot.crt.pem" } ]
لمزيد من المعلومات حول متغيرات البيئة، راجع تكوين متغيرات البيئة.
استخدام صورة مخصصة لـ MySQL TLS/SSL وتكوينات أخرى
بشكل افتراضي، TLS/SSL يُستخدم بواسطة قاعدة بيانات Azure لـ MySQL. يتطلب WordPress تكوينًا إضافيًّا لاستخدام TLS/SSL مع MySQL. لا توفر الصورة الرسمية لـ WordPress التكوين الإضافي، لكن تم إعداد صورة مخصصة لراحتك. في الممارسة العملية، يمكنك إضافة التغييرات المطلوبة إلى صورتك الخاصة.
تعتمد الصورة المخصصة على «الصورة الرسمية» لـ WordPress من Docker Hub. تم إجراء التغييرات التالية في هذه الصورة المخصصة لقاعدة بيانات Azure ل MySQL:
- يضيف ملف شهادة Baltimore Cyber Trust الجذر لـ SSL إلى MySQL.
- يستخدم إعداد التطبيق لشهادة المرجع المصدق في WordPress wp-config.php.
- يضيف تعريف لـ MYSQL_CLIENT_FLAGS اللازمة لـ MySQL SSL.
تم إجراء التغييرات التالية لـ Redis (لاستخدامها في مقطع لاحق):
- يضيف ملحق PHP لـ Redis v4.0.2.
- يضيف فك الضغط المطلوب لاستخراج الملف.
- يضيف Redis Object Cache 1.3.8 البرنامج المساعد WordPress.
- يستخدم إعداد التطبيق لاسم مضيف Redis في WordPress wp-config.php.
لاستخدام الصورة المخصصة، ستقوم بتحديث ملف docker-compose-wordpress.yml. في Cloud Shell، افتح محرر نص وغير image: wordpress
لاستخدام image: mcr.microsoft.com/azuredocs/multicontainerwordpress
. لم تَعُد بحاجة إلى حاوية قاعدة البيانات. قم بإزالة db
،environment
وdepends_on
وvolumes
المقطع من ملف التكوين. يجب أن يبدو ملفك مثل التعليمة البرمجية التالية:
version: '3.3'
services:
wordpress:
image: mcr.microsoft.com/azuredocs/multicontainerwordpress
ports:
- "8000:80"
restart: always
تحديث التطبيق بتكوين جديد
في Cloud Shell، أعد تكوين تطبيق الويب متعدد الحاويات باستخدام أمر تعيين حاوية التكوين az webapp. لا تنسَ استبدال <اسم التطبيق>باسم تطبيق الويب الذي أنشأته سابقًا.
az webapp config container set --resource-group myResourceGroup --name <app-name> --multicontainer-config-type compose --multicontainer-config-file docker-compose-wordpress.yml
عند إعادة تكوين التطبيق، تعرض Cloud Shell معلومات مشابهة للمثال التالي:
[ { "name": "DOCKER_CUSTOM_IMAGE_NAME", "value": "COMPOSE|dmVyc2lvbjogJzMuMycKCnNlcnZpY2VzOgogICB3b3JkcHJlc3M6CiAgICAgaW1hZ2U6IG1zYW5nYXB1L3dvcmRwcmVzcwogICAgIHBvcnRzOgogICAgICAgLSAiODAwMDo4MCIKICAgICByZXN0YXJ0OiBhbHdheXM=" } ]
استعرض التطبيق
استعراض للوصول إلى التطبيق المنشور على (http://<app-name>.azurewebsites.net
). يستخدم التطبيق الآن قاعدة بيانات Azure لـ MySQL.
إضافة تخزين دائم
يتم الآن تشغيل الحاويات المتعددة في تطبيق ويب للحاويات. ومع ذلك، إذا قمت بتثبيت WordPress الآن وأعدتَ تشغيل التطبيق لاحقًا، فستجد أن تثبيت WordPress قد انتهى. يحدث هذا لأن تكوين Docker Compose يشير حاليًّا إلى موقع تخزين داخل الحاوية. لا تستمر الملفات المثبتة في الحاوية بعد إعادة تشغيل التطبيق. في هذا المقطع، ستضيف تخزينًا دائمًا لحاوية WordPress الخاصة بك.
تكوين متغيرات البيئة
لاستخدام التخزين المستمر، ستقوم بتمكين هذا الإعداد داخل خدمة التطبيقات. لإجراء هذه التغييرات، استخدم الأمر az webapp config appsettings set في Cloud Shell. إعدادات التطبيق حساسة لحالة الأحرف ومفصولة بمسافة.
az webapp config appsettings set --resource-group myResourceGroup --name <app-name> --settings WEBSITES_ENABLE_APP_SERVICE_STORAGE=TRUE
عند إنشاء إعداد التطبيق، تعرض Cloud Shell معلومات مشابهة للمثال التالي:
[ < JSON data removed for brevity. > { "name": "WORDPRESS_DB_NAME", "slotSetting": false, "value": "wordpress" }, { "name": "WEBSITES_ENABLE_APP_SERVICE_STORAGE", "slotSetting": false, "value": "TRUE" } ]
تعديل ملف التكوين
في Cloud Shell، افتح الملف docker-compose-wordpress.yml
في محرر نص.
يقوم volumes
الخيار بتعيين نظام الملفات إلى دليل داخل الحاوية. ${WEBAPP_STORAGE_HOME}
هو متغير بيئة في خدمة التطبيق تم تعيينه للتخزين الدائم لتطبيقك. ستستخدم متغير البيئة هذا في خيار وحدات التخزين بحيث يتم تثبيت ملفات WordPress في التخزين المستمر بدلاً من الحاوية. إجراء التعديلات التالية على الملف:
في wordpress
المقطع، أضف volumes
خيارًا ليبدو مثل التعليمة البرمجية التالية:
version: '3.3'
services:
wordpress:
image: mcr.microsoft.com/azuredocs/multicontainerwordpress
volumes:
- ${WEBAPP_STORAGE_HOME}/site/wwwroot:/var/www/html
ports:
- "8000:80"
restart: always
تحديث التطبيق بتكوين جديد
في Cloud Shell، أعد تكوين تطبيق الويب متعدد الحاويات باستخدام أمر تعيين حاوية التكوين az webapp. لا تنسَ استبدال<اسم التطبيق>باسم تطبيق فريد.
az webapp config container set --resource-group myResourceGroup --name <app-name> --multicontainer-config-type compose --multicontainer-config-file docker-compose-wordpress.yml
بعد تشغيل الأمر الخاص بك، فإنه يظهر الإخراج المشابه للمثال التالي:
[ { "name": "WEBSITES_ENABLE_APP_SERVICE_STORAGE", "slotSetting": false, "value": "TRUE" }, { "name": "DOCKER_CUSTOM_IMAGE_NAME", "value": "COMPOSE|dmVyc2lvbjogJzMuMycKCnNlcnZpY2VzOgogICBteXNxbDoKICAgICBpbWFnZTogbXlzcWw6NS43CiAgICAgdm9sdW1lczoKICAgICAgIC0gZGJfZGF0YTovdmFyL2xpYi9teXNxbAogICAgIHJlc3RhcnQ6IGFsd2F5cwogICAgIGVudmlyb25tZW50OgogICAgICAgTVlTUUxfUk9PVF9QQVNTV09SRDogZXhhbXBsZXBhc3MKCiAgIHdvcmRwcmVzczoKICAgICBkZXBlbmRzX29uOgogICAgICAgLSBteXNxbAogICAgIGltYWdlOiB3b3JkcHJlc3M6bGF0ZXN0CiAgICAgcG9ydHM6CiAgICAgICAtICI4MDAwOjgwIgogICAgIHJlc3RhcnQ6IGFsd2F5cwogICAgIGVudmlyb25tZW50OgogICAgICAgV09SRFBSRVNTX0RCX1BBU1NXT1JEOiBleGFtcGxlcGFzcwp2b2x1bWVzOgogICAgZGJfZGF0YTo=" } ]
استعرض التطبيق
استعراض للوصول إلى التطبيق المنشور على (http://<app-name>.azurewebsites.net
).
تستخدم حاوية WordPress الآن قاعدة بيانات Azure لـ MySQL والتخزين المستمر.
إضافة حاوية Redis
لا تتضمن "الصورة الرسمية" لـ WordPress تبعيات Redis. تم إعداد هذه التبعيات والتكوين الإضافي اللازم لاستخدام Redis مع WordPress من أجلك في هذه الصورة المخصصة. في الممارسة العملية، يمكنك إضافة التغييرات المطلوبة إلى صورتك الخاصة.
تعتمد الصورة المخصصة على «الصورة الرسمية» لـ WordPress من Docker Hub. تم إجراء التغييرات التالية في هذه الصورة المخصصة لـ Redis:
- يضيف ملحق PHP لـ Redis v4.0.2.
- يضيف فك الضغط المطلوب لاستخراج الملف.
- يضيف Redis Object Cache 1.3.8 البرنامج المساعد WordPress.
- يستخدم إعداد التطبيق لاسم مضيف Redis في WordPress wp-config.php.
إضافة حاوية redis إلى الجزء السفلي من ملف التكوين بحيث يبدو مثل المثال التالي:
version: '3.3'
services:
wordpress:
image: mcr.microsoft.com/azuredocs/multicontainerwordpress
ports:
- "8000:80"
restart: always
redis:
image: mcr.microsoft.com/oss/bitnami/redis:6.0.8
environment:
- ALLOW_EMPTY_PASSWORD=yes
restart: always
تكوين متغيرات البيئة
لاستخدام Redis، ستقوم بتمكين هذا الإعدادWP_REDIS_HOST
داخل خدمة التطبيق. هذا إعداد مطلوب لـ WordPress للتواصل مع مضيف Redis. لإجراء هذه التغييرات، استخدم الأمر az webapp config appsettings set في Cloud Shell. إعدادات التطبيق حساسة لحالة الأحرف ومفصولة بمسافة.
az webapp config appsettings set --resource-group myResourceGroup --name <app-name> --settings WP_REDIS_HOST="redis"
عند إنشاء إعداد التطبيق، تعرض Cloud Shell معلومات مشابهة للمثال التالي:
[ < JSON data removed for brevity. > { "name": "WORDPRESS_DB_USER", "slotSetting": false, "value": "adminuser" }, { "name": "WP_REDIS_HOST", "slotSetting": false, "value": "redis" } ]
تحديث التطبيق بتكوين جديد
في Cloud Shell، أعد تكوين تطبيق الويب متعدد الحاويات باستخدام أمر تعيين حاوية التكوين az webapp. لا تنسَ استبدال<اسم التطبيق>باسم تطبيق فريد.
az webapp config container set --resource-group myResourceGroup --name <app-name> --multicontainer-config-type compose --multicontainer-config-file compose-wordpress.yml
بعد تشغيل الأمر الخاص بك، فإنه يظهر الإخراج المشابه للمثال التالي:
[ { "name": "DOCKER_CUSTOM_IMAGE_NAME", "value": "COMPOSE|dmVyc2lvbjogJzMuMycKCnNlcnZpY2VzOgogICBteXNxbDoKICAgICBpbWFnZTogbXlzcWw6NS43CiAgICAgdm9sdW1lczoKICAgICAgIC0gZGJfZGF0YTovdmFyL2xpYi9teXNxbAogICAgIHJlc3RhcnQ6IGFsd2F5cwogICAgIGVudmlyb25tZW50OgogICAgICAgTVlTUUxfUk9PVF9QQVNTV09SRDogZXhhbXBsZXBhc3MKCiAgIHdvcmRwcmVzczoKICAgICBkZXBlbmRzX29uOgogICAgICAgLSBteXNxbAogICAgIGltYWdlOiB3b3JkcHJlc3M6bGF0ZXN0CiAgICAgcG9ydHM6CiAgICAgICAtICI4MDAwOjgwIgogICAgIHJlc3RhcnQ6IGFsd2F5cwogICAgIGVudmlyb25tZW50OgogICAgICAgV09SRFBSRVNTX0RCX1BBU1NXT1JEOiBleGFtcGxlcGFzcwp2b2x1bWVzOgogICAgZGJfZGF0YTo=" } ]
استعرض التطبيق
استعراض للوصول إلى التطبيق المنشور على (http://<app-name>.azurewebsites.net
).
إكمال الخطوات وتثبيت WordPress.
اتصال WordPress بـ Redis
سجّل الدخول إلى مدير WordPress. في شريط التنقل الأيمن، حدد المكونات الإضافية، ثم حدد المكونات الإضافية المثبتة.
إظهار جميع المكونات الإضافية هنا
في صفحة المكونات الإضافية، ابحث عن Redis Object Cache وانقر على تنشيط.
انقر فوق «إعدادات».
انقر فوق الزر تمكين ذاكرة التخزين المؤقت للكائنات.
يتصل WordPress بخادم Redis. تظهر حالة الاتصال على نفس الصفحة.
تهانينا، لقد ربطت WordPress بـ Redis. يستخدم التطبيق الجاهز للإنتاج الآن Azure Database لـ MySQL والتخزين الدائم وRedis. يمكنك الآن توسيع نطاق خطة خدمة التطبيقات إلى مثيلات متعددة.
البحث عن سجلات حاوية Docker
إذا واجهت مشكلات في استخدام حاويات متعددة، فيمكنك الوصول إلى سجلات الحاوية عن طريق الاستعراض إلى:https://<app-name>.scm.azurewebsites.net/api/logs/docker
.
يتشابه الإخراج مع المثال التالي:
[ { "machineName":"RD00XYZYZE567A", "lastUpdated":"2018-05-10T04:11:45Z", "size":25125, "href":"https://<app-name>.scm.azurewebsites.net/api/vfs/LogFiles/2018_05_10_RD00XYZYZE567A_docker.log", "path":"/home/LogFiles/2018_05_10_RD00XYZYZE567A_docker.log" } ]
تشاهد سجلاً لكل حاوية وسجلاً إضافيًّا للعملية الأصل. انسخ القيمة المعنيةhref
في المستعرض لعرض السجل.
تنظيف النشر
بعد تشغيل نموذج البرنامج النصي، يمكن استخدام الأمر التالي لإزالة مجموعة الموارد وكافة الموارد المقترنة بها.
az group delete --name myResourceGroup
الخطوات التالية
في هذا البرنامج التعليمي، نتعلم طريقة القيام بما يأتي:
- تحويل تكوين Docker Compose للعمل مع تطبيق ويب للحاويات
- نشر تطبيق متعدد الحاويات على Azure
- إضافة إعدادات التطبيق
- استخدام التخزين المستمر للحاويات الخاصة بك
- الاتصال بـ Azure Database for MySQL
- استكشاف الأخطاء وإصلاحها
تقدم إلى البرنامج التعليمي التالي لمعرفة كيفية تأمين تطبيقك باستخدام مجال وشهادة مخصصين.
أو، يمكنك التحقق من الموارد الأخرى: