نشر WebSphere Liberty وOpen Liberty على Azure Red Hat OpenShift

توضح لك هذه المقالة كيفية الوقوف بسرعة أمام IBM WebSphere Liberty وOpen Liberty على Azure Red Hat OpenShift باستخدام مدخل Microsoft Azure.

تستخدم هذه المقالة عرض Azure Marketplace ل Open/WebSphere Liberty لتسريع رحلتك إلى Azure Red Hat OpenShift. يوفر العرض تلقائيا العديد من الموارد بما في ذلك مجموعة Azure Red Hat OpenShift مع سجل حاويات OpenShift المضمن (OCR) ومشغلي Liberty وصورة حاوية اختياريا بما في ذلك Liberty وتطبيقك. للاطلاع على العرض، قم بزيارة مدخل Microsoft Azure. إذا كنت تفضل إرشادات يدوية خطوة بخطوة لتشغيل Liberty على Azure Red Hat OpenShift التي لا تستخدم الأتمتة التي تم تمكينها بواسطة العرض، فشاهد نشر تطبيق Java يدويا باستخدام Open Liberty/WebSphere Liberty على مجموعة Azure Red Hat OpenShift.

تهدف هذه المقالة إلى مساعدتك في الوصول بسرعة إلى النشر. قبل الذهاب إلى الإنتاج، يجب عليك استكشاف Tuning Liberty.

إذا كنت مهتما بتقديم ملاحظات أو العمل عن كثب على سيناريوهات الترحيل الخاصة بك مع الفريق الهندسي الذي يقوم بتطوير WebSphere على حلول Azure، فاملأ هذا الاستطلاع القصير على ترحيل WebSphere وقم بتضمين معلومات الاتصال الخاصة بك. سيتواصل معك فريق مديري البرامج والمهندسين المعماريين والمهندسين على الفور لبدء التعاون الوثيق.

هام

بينما يتم تصميم ARO وتشغيله ودعمه بشكل مشترك من قبل Red Hat وMicrosoft لتوفير تجربة دعم متكاملة، فإن البرنامج الذي تقوم بتشغيله فوق ARO، بما في ذلك ما ورد وصفه في هذه المقالة، يخضع لشروط الدعم والترخيص الخاصة به. للحصول على تفاصيل حول دعم ARO، راجع دورة حياة الدعم ل Azure Red Hat OpenShift 4. للحصول على تفاصيل حول دعم البرنامج الموضح في هذه المقالة، راجع الصفحات الرئيسية لهذا البرنامج كما هو موضح في المقالة.

إشعار

يتطلب Azure Red Hat OpenShift ما لا يقل عن 40 مركز معالجة لإنشاء نظام مجموعة OpenShift وتشغيلها. لا تفي الحصة النسبية الافتراضية لمورد Azure لاشتراك Azure جديد بهذا المطلب. لطلب زيادة إلى حد الموارد الخاص بك، راجع القسم طلب زيادة الحصص النسبية غير القابلة للتعديل في زيادة حصص VCPU لعائلة VM. نظرا لأن نوع الحصة النسبية التي تحتاج إلى طلب زيادة لها "غير قابل للتعديل"، يجب عليك تقديم تذكرة دعم. توضح لك الخطوات الواردة في طلب زيادة الحصص النسبية غير القابلة للتعديل كيفية تقديم البطاقة بالمحتوى الصحيح بالضبط.

الاشتراك التجريبي المجاني غير مؤهل لزيادة الحصة النسبية. قم بالترقية إلى اشتراك الدفع أولا بأول قبل طلب زيادة الحصة النسبية. لمزيد من المعلومات، راجع ترقية حساب Azure المجاني أو حساب Azure for Students Starter.

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

الحصول على سر سحب Red Hat

يتطلب عرض Azure Marketplace الذي ستستخدمه في هذه المقالة سر سحب Red Hat. يوضح لك هذا القسم كيفية الحصول على سر سحب Red Hat ل Azure Red Hat OpenShift. لمعرفة ما هو سر سحب Red Hat ولماذا تحتاج إليه، راجع قسم الحصول على سر سحب Red Hat في إنشاء مجموعة Azure Red Hat OpenShift 4. للحصول على سر السحب للاستخدام، اتبع الخطوات الواردة في هذا القسم.

استخدم حساب Red Hat لتسجيل الدخول إلى مدخل إدارة نظام مجموعة OpenShift، من خلال زيارة Red Hat OpenShift Hybrid Cloud Console. قد تحتاج إلى قبول المزيد من الشروط وتحديث حسابك كما هو موضح في لقطة الشاشة التالية. استخدم كلمة المرور نفسها التي استخدمتها عند إنشاء الحساب.

لقطة شاشة لصفحة تحديث حساب Red Hat.

بعد تسجيل الدخول، حدد OpenShift، ثم التنزيلات. حدد القائمة المنسدلة All categories ثم حدد Tokens. ضمن سحب البيانات السرية، حدد نسخ أو تنزيل، كما هو موضح في لقطة الشاشة التالية.

لقطة شاشة لمدخل وحدة تحكم Red Hat تظهر سر السحب.

المحتوى التالي هو مثال تم نسخه من مدخل وحدة تحكم Red Hat، مع استبدال رموز المصادقة ب xxxx...xxx.

{"auths":{"cloud.openshift.com":{"auth":"xxxx...xxx","email":"contoso-user@contoso.com"},"quay.io":{"auth":"xxx...xxx","email":"contoso-user@test.com"},"registry.connect.redhat.com":{"auth":"xxxx...xxx","email":"contoso-user@contoso.com"},"registry.redhat.io":{"auth":"xxxx...xxx","email":"contoso-user@contoso.com"}}}

احفظ السر في ملف حتى تتمكن من استخدامه لاحقا.

إنشاء كيان خدمة Microsoft Entra من مدخل Microsoft Azure

يتطلب عرض Azure Marketplace الذي ستستخدمه في هذه المقالة كيان خدمة Microsoft Entra لنشر نظام مجموعة Azure Red Hat OpenShift. يعين العرض كيان الخدمة بامتيازات مناسبة أثناء وقت النشر، دون الحاجة إلى تعيين دور. إذا كان لديك كيان خدمة جاهز للاستخدام، فتخط هذا القسم وانتقل إلى القسم التالي، حيث تقوم بنشر العرض.

استخدم الخطوات التالية لنشر كيان خدمة والحصول على معرف التطبيق (العميل) الخاص به والسر من مدخل Microsoft Azure. لمزيد من المعلومات، راجع إنشاء كيان خدمة واستخدامه لنشر نظام مجموعة Azure Red Hat OpenShift.

إشعار

يجب أن يكون لديك أذونات كافية لتسجيل تطبيق مع مستأجر Microsoft Entra. إذا واجهت مشكلة، فتحقق من الأذونات المطلوبة للتأكد من أن حسابك يمكنه إنشاء الهوية. لمزيد من المعلومات، راجع تسجيل تطبيق Microsoft Entra وإنشاء كيان خدمة.

  1. سجل الدخول إلى حساب Azure الخاص بك من خلال مدخل Microsoft Azure.

  2. حدد معرف Microsoft Entra.

  3. حدد App registrations.

  4. حدد تسجيل جديد.

  5. قم بتسمية التطبيق، على سبيل المثال "liberty-on-aro-app". حدد نوع الحساب المدعوم، والذي يحدد من يمكنه استخدام التطبيق. بعد تعيين القيم، حدد Register، كما هو موضح في لقطة الشاشة التالية. يستغرق توفير التطبيق عدة ثوان. انتظر حتى يكتمل النشر قبل المتابعة.

    لقطة شاشة لمدخل Azure تعرض صفحة تسجيل تطبيق.

  6. احفظ معرف التطبيق (العميل) من صفحة النظرة العامة، كما هو موضح في لقطة الشاشة التالية. مرر المؤشر فوق القيمة (منقحة في لقطة الشاشة) وحدد أيقونة النسخ التي تظهر. يشير تلميح الأدوات إلى نسخ إلى الحافظة. احرص على نسخ القيمة الصحيحة، نظرا لأن القيم الأخرى في هذا القسم تحتوي أيضا على أيقونات نسخ. احفظ معرف التطبيق إلى ملف حتى تتمكن من استخدامه لاحقا.

    لقطة شاشة لمدخل Azure تعرض معرف العميل الأساسي للخدمة.

  7. إنشاء سر عميل جديد باتباع الخطوات التالية:

    1. حدد الشهادات والأسرار.
    2. حدد أسرار العميل، ثم سر العميل الجديد.
    3. قدم وصفا للسر والمدة. عندما تنتهي، حدد إضافة.
    4. بعد إضافة سر العميل، يتم عرض قيمة سر العميل. انسخ هذه القيمة لأنه لا يمكنك استردادها لاحقا.

لديك الآن تطبيق Microsoft Entra، ومدير الخدمة، وسر العميل.

نشر IBM WebSphere Liberty أو Open Liberty على Azure Red Hat OpenShift

توجهك الخطوات الواردة في هذا القسم إلى نشر IBM WebSphere Liberty أو Open Liberty على Azure Red Hat OpenShift.

توضح لك الخطوات التالية كيفية العثور على العرض وملء جزء الأساسيات .

  1. في شريط البحث أعلى مدخل Microsoft Azure، أدخل Liberty. في نتائج البحث التي تم اقتراحها تلقائيا، في قسم Marketplace ، حدد IBM Liberty على ARO، كما هو موضح في لقطة الشاشة التالية.

    لقطة شاشة لمدخل Azure تعرض IBM WebSphere Liberty وOpen Liberty على Azure Red Hat OpenShift في نتائج البحث.

    يمكنك أيضا الانتقال مباشرة إلى العرض باستخدام رابط المدخل هذا.

  2. في صفحة العرض، حدد إنشاء.

  3. في جزء Basics ، تأكد من أن القيمة المعروضة في حقل Subscription هي نفس القيمة التي تحتوي على الأدوار المدرجة في قسم المتطلبات الأساسية.

  4. يجب نشر العرض في مجموعة موارد فارغة. في حقل Resource group ، حدد Create new واملأ قيمة لمجموعة الموارد. نظرًا إلى أن مجموعات الموارد يجب أن تكون فريدة داخل اشتراك، اختر اسمًا فريدًا. من الطرق السهلة للحصول على أسماء فريدة استخدام مجموعة من الأحرف الأولى من اسمك وتاريخ اليوم وبعض المعرف. على سبيل المثال، abc1228rg.

  5. إنشاء متغير بيئة في shell الخاص بك لاسم مجموعة الموارد.

    export RESOURCE_GROUP_NAME=<your-resource-group-name>
    
  6. ضمن تفاصيل المثيل، حدد المنطقة للنشر. للحصول على قائمة بمناطق Azure حيث يعمل OpenShift، راجع المناطق ل Red Hat OpenShift 4.x على Azure.

  7. بعد تحديد المنطقة، حدد التالي.

توضح لك الخطوات التالية كيفية ملء جزء ARO الموضح في لقطة الشاشة التالية:

لقطة شاشة لمدخل Azure تعرض IBM WebSphere Liberty وOpen Liberty في جزء Azure Red Hat OpenShift ARO.

  1. ضمن Create a new cluster، حدد Yes.

  2. ضمن توفير معلومات لإنشاء مجموعة جديدة، بالنسبة إلى سر سحب Red Hat، املأ سر سحب Red Hat الذي حصلت عليه في قسم الحصول على سر سحب Red Hat. استخدم نفس القيمة لتأكيد السر.

  3. املأ معرف عميل كيان الخدمة بمعرف التطبيق الأساسي للخدمة (العميل) الذي حصلت عليه في قسم إنشاء كيان خدمة Microsoft Entra من مدخل Microsoft Azure.

  4. املأ سر عميل كيان الخدمة بسر التطبيق الأساسي للخدمة الذي حصلت عليه في قسم إنشاء كيان خدمة Microsoft Entra من مدخل Microsoft Azure . استخدم نفس القيمة لتأكيد السر.

  5. بعد ملء القيم، حدد التالي.

توضح لك الخطوات التالية كيفية ملء جزء المشغل والتطبيق الموضح في لقطة الشاشة التالية، وبدء النشر.

لقطة شاشة لمدخل Azure تعرض IBM WebSphere Liberty وOpen Liberty على عامل تشغيل Azure Red Hat OpenShift وجزء التطبيق.

  1. ضمن IBM supported?، حدد Yes.

    إشعار

    ينشر هذا التشغيل السريع عامل تشغيل WebSphere Liberty المدعوم من IBM، ولكن يمكنك تحديد لا لنشر عامل تشغيل Open Liberty بدلا من ذلك.

  2. اترك الخيار الافتراضي لا لنشر تطبيق؟.

    إشعار

    يقوم هذا التشغيل السريع بنشر نموذج تطبيق يدويا لاحقا، ولكن يمكنك تحديد نعم لنشر تطبيق؟ إذا كنت تفضل ذلك.

  3. حدد "Review + create". تأكد من ظهور رسالة التحقق من الصحة التي تم تمريرها باللون الأخضر في الأعلى. إذا لم تظهر الرسالة، قم بإصلاح أي مشاكل في التحقق من الصحة ثم حدد Review + create مرة أخرى.

  4. حدد إنشاء.

  5. تعقب تقدم النشر في صفحة Deployment قيد التقدم .

اعتمادا على ظروف الشبكة والنشاطات الأخرى في المنطقة المحددة، قد يستغرق النشر ما يصل إلى 40 دقيقة لإكماله.

التحقق من وظيفة النشر

توضح لك الخطوات الواردة في هذا القسم كيفية التحقق من اكتمال النشر بنجاح.

إذا انتقلت بعيدا عن صفحة النشر قيد التقدم ، فإن الخطوات التالية توضح لك كيفية العودة إلى تلك الصفحة. إذا كنت لا تزال على الصفحة التي تظهر اكتمال النشر الخاص بك، يمكنك التخطي إلى الخطوة 5.

  1. في زاوية أي صفحة مدخل، حدد قائمة الهامبرغر ثم حدد مجموعات الموارد.

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

  3. في جزء التنقل، في قسم Settings ، حدد Deployments. ترى قائمة مرتبة من عمليات التوزيع إلى مجموعة الموارد هذه، مع أحدث قائمة أولا.

  4. قم بالتمرير إلى أقدم إدخال في هذه القائمة. يتوافق هذا الإدخال مع النشر الذي بدأته في القسم السابق. حدد أقدم عملية نشر، كما هو موضح في لقطة الشاشة التالية.

    لقطة شاشة لمدخل Azure تعرض IBM WebSphere Liberty وOpen Liberty على عمليات نشر Azure Red Hat OpenShift مع تمييز أقدم عملية توزيع.

  5. في جزء التنقل، حدد Outputs. تعرض هذه القائمة قيم الإخراج من التوزيع، والتي تتضمن بعض المعلومات المفيدة.

  6. افتح المحطة الطرفية والصق القيمة من حقل cmdToGetKubeadminCredentials . ترى حساب المسؤول وبيانات الاعتماد لتسجيل الدخول إلى مدخل وحدة تحكم نظام المجموعة OpenShift. المحتوى التالي هو مثال على حساب المسؤول.

    az aro list-credentials --resource-group abc1228rg --name clusterf9e8b9
    {
      "kubeadminPassword": "xxxxx-xxxxx-xxxxx-xxxxx",
      "kubeadminUsername": "kubeadmin"
    }
    
  7. الصق القيمة من حقل clusterConsoleUrl في مستعرض ويب متصل بالإنترنت، ثم اضغط على Enter. املأ اسم مستخدم المسؤول وكلمة المرور وسجل الدخول.

  8. تحقق من تثبيت عامل تشغيل Kubernetes المناسب ل Liberty. في جزء التنقل، حدد عوامل التشغيل، ثم عوامل التشغيل المثبتة، كما هو موضح في لقطة الشاشة التالية:

    لقطة شاشة لمدخل وحدة تحكم نظام المجموعة Red Hat OpenShift تعرض صفحة عوامل التشغيل المثبتة.

    لاحظ إذا قمت بتثبيت عامل تشغيل WebSphere Liberty أو عامل تشغيل Open Liberty. يطابق متغير عامل التشغيل ما حددته في وقت النشر. إذا حددت IBM Supported، فلديك عامل تشغيل WebSphere Liberty. وإلا يكون لديك عامل تشغيل Open Liberty. من المهم معرفة هذه المعلومات في الخطوات اللاحقة.

  9. قم بتنزيل OpenShift CLI oc وتثبيته باتباع الخطوات الواردة في البرنامج التعليمي تثبيت OpenShift CLI، ثم العودة إلى هذه الوثائق.

  10. قم بالتبديل إلى جزء Outputs ، وانسخ القيمة من حقل cmdToLoginWithKubeadmin ، ثم الصقها في المحطة الطرفية. قم بتشغيل الأمر لتسجيل الدخول إلى خادم API الخاص بمجموعة OpenShift. يجب أن تشاهد إخراجا مشابها للمثال التالي في وحدة التحكم:

    Login successful.
    
    You have access to 71 projects, the list has been suppressed. You can list all projects with 'oc projects'
    
    Using project "default".
    

إنشاء قاعدة بيانات Azure SQL:

ترشدك الخطوات التالية خلال إنشاء قاعدة بيانات أحادية لقاعدة بيانات Azure SQL لاستخدامها مع تطبيقك:

  1. إنشاء قاعدة بيانات واحدة في قاعدة بيانات Azure SQL باتباع الخطوات الواردة في التشغيل السريع: إنشاء قاعدة بيانات أحادية لقاعدة بيانات Azure SQL، مع ملاحظة الاختلافات الموضحة في الملاحظة التالية بعناية. يمكنك نشر قاعدة البيانات إلى نفس مجموعة الموارد مثل مجموعة OpenShift. بعد إنشاء خادم قاعدة البيانات وتكوينه، ارجع إلى هذه المقالة.

    إشعار

    في خطوة الأساسيات، اكتب قيم مجموعة الموارد واسم< قاعدة البيانات واسم> الخادم.database.windows.net وتسجيل دخول مسؤول الخادم وكلمة المرور. يشار إلى مجموعة موارد قاعدة البيانات باسم <db-resource-group> لاحقا في هذه المقالة.

    في خطوة الشبكات، قم بتعيين أسلوب الاتصال إلى نقطة النهاية العامة، والسماح لخدمات وموارد Azure بالوصول إلى هذا الخادم إلى نعم، وإضافة عنوان IP للعميل الحالي إلى نعم.

    لقطة شاشة لمدخل Azure تعرض علامة تبويب الشبكات في صفحة إنشاء قاعدة بيانات SQL مع تمييز إعدادات قواعد الاتصال وجدار الحماية.

  2. إنشاء متغير بيئة في shell الخاص بك لاسم مجموعة الموارد لقاعدة البيانات.

    export DB_RESOURCE_GROUP_NAME=<db-resource-group>
    

الآن بعد أن قمت بإنشاء قاعدة البيانات ومجموعة Azure Red Hat OpenShift، يمكنك إعداد مجموعة Azure Red Hat OpenShift لاستضافة تطبيق WebSphere Liberty الخاص بك.

تكوين وتوزيع نموذج التطبيق

اتبع الخطوات الواردة في هذا القسم لتوزيع نموذج التطبيق في وقت تشغيل Liberty. تستخدم هذه الخطوات Maven.

التحقق من التطبيق

استنساخ نموذج التعليمات البرمجية لهذا الدليل باستخدام الأوامر التالية. العينة متاحة على GitHub.

git clone https://github.com/Azure-Samples/open-liberty-on-aro.git
cd open-liberty-on-aro
export BASE_DIR=$PWD
git checkout 20240920
cd 3-integration/connect-db/mssql

إذا رأيت رسالة حول وجودك في حالة "HEAD منفصل"، فهذه الرسالة آمنة للتجاهل. هذا يعني فقط أنك سحبت علامة.

هناك ثلاث عينات في المستودع. نستخدم 3-integration/connect-db/mssql/. فيما يلي بنية ملف التطبيق:

mssql
├─ src/main/
│  ├─ aro/
│  │  ├─ db-secret.yaml
│  │  ├─ openlibertyapplication.yaml
│  │  ├─ webspherelibertyapplication.yaml
│  ├─ docker/
│  │  ├─ Dockerfile
│  │  ├─ Dockerfile-ol
│  ├─ liberty/config/
│  │  ├─ server.xml
│  ├─ java/
│  ├─ resources/
│  ├─ webapp/
├─ pom.xml

الدلائل java والموارد وتطبيق الويب ستحتوي على التعليمات البرمجية المصدر لتطبيق العينة. التعليمات البرمجية تقوم بتعريف مصدر بيانات يسمى jdbc/JavaEECafeDB واستخدامه.

في دليل aro ، هناك ثلاثة ملفات نشر. يتم استخدام db-secret.xml لإنشاء أسرار Kubernetes مع بيانات اعتماد اتصال قاعدة البيانات. يتم استخدام الملف webspherelibertyapplication.yaml في هذا التشغيل السريع لنشر تطبيق WebSphere Liberty. استخدم الملف openlibertyapplication.yaml لنشر تطبيق Open Liberty إذا قمت بنشر عامل تشغيل Open Liberty في القسم نشر IBM WebSphere Liberty أو Open Liberty على Azure Red Hat OpenShift.

في دليل docker ، هناك ملفان لإنشاء صورة التطبيق إما مع Open Liberty أو WebSphere Liberty. هذه الملفات هي Dockerfile وDockerfile-ol، على التوالي. يمكنك استخدام ملف Dockerfile لإنشاء صورة التطبيق باستخدام WebSphere Liberty في هذا التشغيل السريع. وبالمثل، استخدم الملف Dockerfile-ol لإنشاء صورة التطبيق باستخدام Open Liberty إذا قمت بنشر عامل تشغيل Open Liberty في القسم نشر IBM WebSphere Liberty أو Open Liberty على Azure Red Hat OpenShift.

في الدليل liberty/config، يتم استخدام ملف server.xml لتكوين اتصال قاعدة البيانات لمجموعة Open Liberty وWebSphere Liberty.

إنشاء المشروع

الآن بعد أن جمعت الخصائص الضرورية، يمكنك إنشاء التطبيق باستخدام الأوامر التالية. يقرأ ملف POM للمشروع العديد من المتغيرات من البيئة. كجزء من بناء Maven، يتم استخدام هذه المتغيرات لملء القيم في ملفات YAML الموجودة في src/main/aro. يمكنك القيام بشيء مشابه لتطبيقك خارج Maven إذا كنت تفضل ذلك.

cd ${BASE_DIR}/3-integration/connect-db/mssql

# The following variables are used for deployment file generation into target.
export DB_SERVER_NAME=<server-name>.database.windows.net
export DB_NAME=<database-name>
export DB_USER=<server-admin-login>@<server-name>
export DB_PASSWORD=<server-admin-password>

mvn clean install

(اختياري) اختبار مشروعك محليا

يمكنك الآن تشغيل المشروع واختباره محليا قبل النشر إلى Azure باستخدام الخطوات التالية. للراحة، نستخدم liberty-maven-plugin. لمعرفة المزيد حول liberty-maven-plugin، راجع إنشاء تطبيق ويب باستخدام Maven. بالنسبة للتطبيق الخاص بك، يمكنك القيام بشيء مشابه باستخدام أي آلية أخرى، مثل IDE المحلي الخاص بك. يمكنك أيضا التفكير في liberty:devc استخدام الخيار المخصص للتطوير باستخدام الحاويات. يمكنك قراءة المزيد عن liberty:devc في مستندات Liberty.

  1. ابدأ تشغيل التطبيق باستخدام liberty:run، كما هو موضح في المثال التالي. liberty:run يستخدم أيضا متغيرات البيئة المحددة في القسم السابق.

    cd ${BASE_DIR}/3-integration/connect-db/mssql
    mvn liberty:run
    
  2. تحقق من أن التطبيق يعمل كما هو متوقع. سترى رسالة مشابهة لـ [INFO] [AUDIT] CWWKZ0003I: The application javaee-cafe updated in 1.930 seconds. في مُخرج الأمر إذا كانت العملية ناجحة. انتقل إلى http://localhost:9080/ أو https://localhost:9443/ في المستعرض وتحقق من إمكانية الوصول إلى التطبيق وأن جميع الوظائف تعمل.

  3. اضغط على Ctrl+C للإيقاف.

بعد ذلك، استخدم الخطوات التالية لتعبئة مشروعك في حاويات باستخدام Docker وتشغيله كحاوية محليا قبل النشر إلى Azure:

  1. استخدم الأوامر التالية لإنشاء الصورة:

    cd ${BASE_DIR}/3-integration/connect-db/mssql/target
    docker buildx build --platform linux/amd64 -t javaee-cafe:v1 --pull --file=Dockerfile .
    
  2. قم بتشغيل الصورة باستخدام الأمر التالي. لاحظ أننا نستخدم متغيرات البيئة المحددة مسبقا.

    docker run -it --rm -p 9080:9080 -p 9443:9443 \
        -e DB_SERVER_NAME=${DB_SERVER_NAME} \
        -e DB_NAME=${DB_NAME} \
        -e DB_USER=${DB_USER} \
        -e DB_PASSWORD=${DB_PASSWORD} \
        javaee-cafe:v1
    
  3. بمجرد بدء تشغيل الحاوية، انتقل إلى http://localhost:9080/ أو https://localhost:9443/ في المستعرض للوصول إلى التطبيق.

  4. اضغط على Ctrl+C للإيقاف.

إنشاء صورة ودفعها إلى دفق الصور

عندما تكون راضيا عن حالة التطبيق، يمكنك إنشاء الصورة عن بعد على نظام المجموعة باستخدام الخطوات التالية.

  1. استخدم الأوامر التالية لهوية الدليل المصدر وDockerfile:

    cd ${BASE_DIR}/3-integration/connect-db/mssql/target
    
    # If you are deploying the application with WebSphere Liberty Operator, the existing Dockerfile is ready for you
    
    # If you are deploying the application with Open Liberty Operator, uncomment and execute the following two commands to rename Dockerfile-ol to Dockerfile
    # mv Dockerfile Dockerfile.backup
    # mv Dockerfile-ol Dockerfile
    
  2. استخدم الأمر التالي لإنشاء دفق صورة:

    oc create imagestream javaee-cafe
    
  3. استخدم الأمر التالي لإنشاء تكوين بناء يحدد علامة دفق الصورة لإخراج البنية:

    oc new-build --name javaee-cafe-config --binary --strategy docker --to javaee-cafe:v1
    
  4. استخدم الأمر التالي لبدء الإنشاء لتحميل المحتويات المحلية، والتعبئة في حاويات، والإخراج إلى علامة دفق الصور المحددة من قبل:

    oc start-build javaee-cafe-config --from-dir . --follow
    

قم بتوزيع التطبيق واختباره

استخدم الخطوات التالية لنشر التطبيق واختباره:

  1. استخدم الأمر التالي لتطبيق سر قاعدة البيانات:

    cd ${BASE_DIR}/3-integration/connect-db/mssql/target
    oc apply -f db-secret.yaml
    

    يجب أن تشاهد الإخراج secret/db-secret-mssql created.

  2. استخدم الأمر التالي لتطبيق ملف التوزيع:

    oc apply -f webspherelibertyapplication.yaml
    
  3. انتظر حتى يتم بدء تشغيل كافة pods وتشغيلها بنجاح باستخدام الأمر التالي:

    oc get pods -l app.kubernetes.io/name=javaee-cafe --watch
    

    يجب أن تشاهد إخراجا مشابها للمثال التالي للإشارة إلى أن جميع القرون قيد التشغيل:

    NAME                          READY   STATUS    RESTARTS   AGE
    javaee-cafe-67cdc95bc-2j2gr   1/1     Running   0          29s
    javaee-cafe-67cdc95bc-fgtt8   1/1     Running   0          29s
    javaee-cafe-67cdc95bc-h47qm   1/1     Running   0          29s
    
  4. استخدم الخطوات التالية للتحقق من النتائج:

    1. استخدم الأمر التالي للحصول على مضيف مورد المسار المنشور مع التطبيق:

      echo "route host: https://$(oc get route javaee-cafe --template='{{ .spec.host }}')"
      
    2. انسخ قيمة من route host الإخراج، وافتحها في المتصفح الخاص بك، واختبر التطبيق. إذا لم يتم عرض صفحة الويب بشكل صحيح، فهذا لأن التطبيق لا يزال يبدأ في الخلفية. انتظر لبضع دقائق ثم حاول مرة أخرى.

    3. أضف بعض القهوة واحذفها للتحقق من وظائف التطبيق واتصال قاعدة البيانات.

      لقطة شاشة للتطبيق قيد التشغيل.

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

لتجنب رسوم Azure، ينبغي أن تقوم بإزالة الموارد غير الضرورية. عندما لم تعد هناك حاجة إلى نظام المجموعة، استخدم الأمر az group delete لإزالة مجموعة الموارد ومجموعة Azure Red Hat OpenShift وقاعدة بيانات Azure SQL وجميع الموارد ذات الصلة.

az group delete --name $RESOURCE_GROUP_NAME --yes --no-wait
az group delete --name $DB_RESOURCE_GROUP_NAME --yes --no-wait

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

لمزيد من المعلومات حول نشر عائلة IBM WebSphere على Azure، راجع ما هي الحلول لتشغيل مجموعة منتجات WebSphere على Azure؟