إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
توضح هذه المقالة كيفية نشر نموذج تطبيق Spring PetClinic إلى Azure Container Apps باستخدام ملف أرشيف تطبيق ويب (WAR) أو ملف Java Archive (JAR).
هناك العديد من الخيارات المتاحة لنشر تطبيقات Java، بما في ذلك الخيارات التالية:
- النشر من نظام ملفات محلي أو من مستودع التعليمات البرمجية.
- النشر باستخدام Maven أو IDE.
- النشر باستخدام ملف WAR أو ملف JAR أو مباشرة من التعليمات البرمجية المصدر.
بنهاية هذا البرنامج التعليمي، يمكنك نشر تطبيق ويب يمكنك إدارته من خلال مدخل Microsoft Azure. تظهر لقطة الشاشة التالية الصفحة الرئيسية لتطبيق PetClinic المنشور في Azure Container Apps:
المتطلبات الأساسية
- اشتراك Azure. أنشئ واحدا مجانا.
- أو
ContributorOwnerالإذن على اشتراك Azure. لمزيد من المعلومات، راجع تعيين أدوار Azure باستخدام مدخل Azure. - حساب GitHub.
- بوابه
- Azure CLI
- ملحق Azure Container Apps CLI، الإصدار 0.3.47 أو أعلى. استخدم الأمر التالي لتثبيت أحدث إصدار:
az extension add --name containerapp --upgrade --allow-preview - Java Development Kit، الإصدار 17 أو أحدث.
- أباتشي مافن
إنشاء المشروع
إنشاء المشروع باستخدام الخطوات التالية:
استنساخ مستودع نماذج Java لتطبيقات حاوية Azure باستخدام الأمر التالي:
git clone https://github.com/Azure-Samples/azure-container-apps-java-samples.git
انسخ Spring PetClinic Sample Application repo باستخدام الأمر التالي:
git clone https://github.com/spring-petclinic/spring-framework-petclinic.git
انتقل إلى المجلد spring-petclinic باستخدام الأمر التالي:
cd azure-container-apps-java-samples/spring-petclinic/spring-petclinic/تهيئة وتحديث Spring PetClinic Sample Application repo إلى أحدث إصدار باستخدام الأمر التالي:
git submodule update --init --recursiveاستخدم الأمر التالي لتنظيف منطقة إنشاء Maven، وتحويل التعليمات البرمجية للمشروع برمجيا، وإنشاء ملف JAR، وتخطي جميع الاختبارات أثناء هذه العمليات:
mvn clean verify
لديك الآن ملف /target/petclinic.jar .
انتقل إلى المجلد spring-framework-petclinic باستخدام الأمر التالي:
cd spring-framework-petclinicاستخدم الأمر التالي لتنظيف منطقة إنشاء Maven، وتحويل التعليمات البرمجية للمشروع برمجيا، وإنشاء ملف JAR، وتخطي جميع الاختبارات أثناء هذه العمليات:
mvn clean verify
لديك الآن ملف /target/petclinic.war .
نشر المشروع
انشر حزمة JAR إلى Azure Container Apps باستخدام الأمر التالي:
إشعار
إصدار JDK الافتراضي هو 17. لديك خيار تحديد الإصدار باستخدام متغيرات البيئة. لتغيير إصدار JDK للتوافق مع التطبيق الخاص بك، استخدم الوسيطة --build-env-vars BP_JVM_VERSION=<your-JDK-version> . لمزيد من المعلومات، راجع إنشاء متغيرات البيئة ل Java في Azure Container Apps (معاينة).
az containerapp up \
--resource-group <resource-group> \
--name <container-app-name> \
--subscription <subscription-ID>\
--location <location> \
--environment <environment-name> \
--artifact <JAR-file-path-and-name> \
--ingress external \
--target-port 8080 \
--query properties.configuration.ingress.fqdn
انشر ملف WAR إلى Azure Container Apps باستخدام الأمر التالي:
إشعار
إصدار Tomcat الافتراضي هو 9. لتغيير إصدار التوافق مع التطبيق الخاص بك، استخدم الوسيطة --build-env-vars BP_TOMCAT_VERSION=<your-Tomcat-version> . في هذا المثال، يتم تعيين إصدار Tomcat إلى 10 - بما في ذلك أي إصدارات ثانوية - عن طريق تعيين BP_TOMCAT_VERSION=10.*. لمزيد من المعلومات، راجع إنشاء متغيرات البيئة ل Java في Azure Container Apps (معاينة).
az containerapp up \
--resource-group <resource-group> \
--name <container-app-name> \
--subscription <subscription>\
--location <location> \
--environment <environment-name> \
--artifact <WAR-file-path-and-name> \
--build-env-vars BP_TOMCAT_VERSION=10.* \
--ingress external \
--target-port 8080 \
--query properties.configuration.ingress.fqdn
التحقق من حالة التطبيق
في هذا المثال، containerapp up يتضمن الأمر الوسيطة --query properties.configuration.ingress.fqdn التي ترجع اسم المجال المؤهل بالكامل (FQDN)، والمعروف أيضا باسم عنوان URL للتطبيق.
عرض التطبيق عن طريق لصق عنوان URL هذا في مستعرض.
تنظيف الموارد
إذا كنت تخطط لمواصلة العمل مع المزيد من قوالب التشغيل السريع والبرامج التعليمية، فقد ترغب في ترك هذه الموارد في مكانها. عندما لم تعد بحاجة إلى الموارد، يمكنك إزالتها لتجنب رسوم Azure، باستخدام الأمر التالي:
az group delete --name <resource-group>