توزيع تطبيقات Spring Boot باستخدام Maven

إشعار

يعد Azure Spring Apps هو الاسم الجديد لخدمة Azure Spring Cloud. رغم أن الخدمة تحمل اسماً جديداً، سترى الاسم القديم في بعض الأماكن لفترة من الوقت بينما نعمل على تحديث الأصول مثل لقطات الشاشة، ومقاطع الفيديو، والرسوم التخطيطية.

هذه المقالة تنطبق على: ✔️ Java ❌ C#‎

تنطبق هذه المقالة على: ✔️ Basic/Standard ✔️ Enterprise

توضح لك هذه المقالة كيفية استخدام المكون الإضافي Azure Spring Apps Maven لتكوين التطبيقات وتوزيعها في تطبيقات Azure Spring.

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

إنشاء مشروع Spring

لإنشاء مشروع Spring لاستخدامه في هذه المقالة، استخدم الخطوات التالية:

  1. انتقل إلى Spring Initializr لإنشاء نموذج مشروع باستخدام التبعيات الموصى بها لـ Azure Spring Apps. يستخدم هذا الارتباط عنوان URL التالي ليوفر لك الإعدادات الافتراضية.

    https://start.spring.io/#!type=maven-project&language=java&platformVersion=2.5.7&packaging=jar&jvmVersion=1.8&groupId=com.example&artifactId=hellospring&name=hellospring&description=Demo%20project%20for%20Spring%20Boot&packageName=com.example.hellospring&dependencies=web,cloud-eureka,actuator,cloud-config-client
    

    توضح الصورة التالية إعداد Spring Initializr الموصى به لهذا المشروع النموذجي.

    لقطة شاشة لصفحة Spring Initializr تعرض الإعدادات الموصى بها.

    يستخدم هذا المثال إصدار Java 8. إذا كنت ترغب في استخدام الإصدار 11 من Java، فقم بتغيير الخيار ضمن "Project Metadata".

  2. حدد "Generate" عند تعيين جميع التبعيات.

  3. قم بتنزيل الحزمة وفك ضغطها، ثم قم بإنشاء وحدة تحكم ويب لتطبيق ويب. أضف الملف src/main/java/com/example/hellospring/HelloController.java مع المحتويات التالية:

    package com.example.hellospring;
    
    import org.springframework.web.bind.annotation.RestController;
    import org.springframework.web.bind.annotation.RequestMapping;
    
    @RestController
    public class HelloController {
    
        @RequestMapping("/")
        public String index() {
            return "Greetings from Azure Spring Apps!";
        }
    
    }
    

بناء تطبيقات Spring محلياً

لإنشاء المشروع باستخدام Maven، قم بتشغيل الأوامر التالية:

cd hellospring
mvn clean package -DskipTests -Denv=cloud

يستغرق تجميع المشروع عدة دقائق. بعد اكتماله، يجب أن يكون لديك ملفات JAR فردية لكل خدمة في مجلداتها الخاصة.

توفير مثيل من Azure Spring Apps

ينشئ الإجراء التالي مثيلاً من Azure Spring Apps باستخدام مدخل Microsoft Azure.

  1. في علامة تبويب جديدة، افتح مدخل Azure.

  2. من مربع البحث العلوي، ابحث عن Azure Spring Apps.

  3. حدد Azure Spring Apps من النتائج.

  4. في صفحة Azure Spring Apps، حدد Create.

    لقطة شاشة لمدخل Azure تعرض مورد Azure Spring Apps مع تمييز الزر إنشاء.

  5. املأ النموذج في صفحة إنشاء من Azure Spring Apps. ضع في اعتبارك الإرشادات التالية:

    • الاشتراك: حدد الاشتراك الذي تريد استخدامه لمجموعة الموارد.
    • مجموعة الموارد: إنشاء مجموعات موارد جديدة للموارد الجديدة هو أفضل الممارسات. ستستخدم مجموعة الموارد هذه في الخطوات اللاحقة كـ <اسم مجموعة الموارد>.
    • تفاصيل الخدمة/الاسم: حدد <اسم مثيل الخدمة>. يجب أن يتراوح الاسم بين 4 أحرف و32 حرفاً، ويجب أن يحتوي على أحرف صغيرة وأرقام وواصلات فقط. يجب أن يكون الحرف الأول من اسم الخدمة حرفاً ويجب أن يكون الحرف الأخير إما حرفاً أو رقماً.
    • الموقع: حدد المنطقة لمثيل الخدمة.

    لقطة شاشة لمدخل Azure تعرض صفحة Azure Spring Apps Create.

  6. حدد مراجعة وإنشاء.

إنشاء تكوينات وتوزيعها في تطبيقات Azure Spring

لإنشاء تكوينات وتوزيع التطبيق، اتبع الخطوات التالية:

  1. قم بتشغيل الأمر التالي من المجلد الجذر hellospring، والذي يحتوي على ملف POM. إذا قمت بتسجيل الدخول بالفعل باستخدام واجهة مستوى الاستدعاء (Azure CLI)، فسيقوم الأمر تلقائياً باختيار بيانات الاعتماد. خلاف ذلك، سيطالبك الأمر بإرشادات تسجيل الدخول. لمزيد من المعلومات، راجع المصادقة في مستودع azure-maven-plugins على GitHub.

    mvn com.microsoft.azure:azure-spring-apps-maven-plugin:1.10.0:config
    

    سيُطلب منك تحديد:

    • معرف الاشتراك - الاشتراك الذي استخدمته لإنشاء مثيل Azure Spring Apps.
    • مثيل الخدمة - اسم مثيل Azure Spring Apps الخاص بك.
    • اسم التطبيق - اسم تطبيق من اختيارك، أو استخدم القيمة الافتراضية artifactId.
    • نقطة النهاية العامة - صحيحة لعرض التطبيق للوصول العام؛ وإلا، خطأ.
  2. تحقق من أن العنصر appName في ملف POM يحتوي على القيمة الصحيحة. يجب أن يبدو الجزء ذو الصلة من ملف POM مشابهاً للمثال التالي.

    <build>
        <plugins>
            <plugin>
                <groupId>com.microsoft.azure</groupId>
                <artifactId>azure-spring-apps-maven-plugin</artifactId>
                <version>1.10.0</version>
                <configuration>
                    <subscriptionId>xxxxxxxxx-xxxx-xxxx-xxxxxxxxxxxx</subscriptionId>
                    <clusterName>v-spr-cld</clusterName>
                    <appName>hellospring</appName>
    

    يحتوي ملف POM الآن على تبعيات وتكوينات البرنامج المساعد.

  3. وَزِّع التطبيق باستخدام الأمر التالي.

    mvn azure-spring-apps:deploy
    

تحقق من الخدمات

بعد اكتمال التوزيع، يمكنك الوصول إلى التطبيق على https://<service instance name>-hellospring.azuremicroservices.io/.

لقطة شاشة لتطبيق hello spring كما هو الحال في المتصفح.

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

إذا كنت تخطط لمواصلة العمل مع التطبيق النموذجي، فقد ترغب في ترك الموارد في مكانها. عند عدم الحاجة إلى ذلك، احذف مجموعة الموارد التي تحتوي على مثيل Azure Spring Apps. لحذف مجموعة الموارد باستخدام Azure CLI، استخدم الأوامر التالية:

echo "Enter the Resource Group name:" &&
read resourceGroupName &&
az group delete --name $resourceGroupName &&
echo "Press [ENTER] to continue ..."

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