كيفية نشر تطبيق Node الرائع على Azure من GitHub

هل أنت مطور Nodejs يحب تطوير تطبيقات رائعة كهواية ولكن يحتاج إلى مكان ما لإظهاره؟

هل أنت شخص مفتون أزور ويغري لتجربته؟

هل أنت أيضًا هذا الشخص غارق في التكوينات التي يوفرها Azure؟

حسنًا .. اليوم سأشرح طريقة بسيطة جدًا لتشغيل تطبيقك وتشغيله على أزور ببضع نقرات.

كنت قد نشرت مقالًا حول نشر "تطبيق عقدة رائع" على Heroku من Github مجانًا. ولكن بعد أن قررنا إنشاء تطبيق Node "رائع" ، سنستخدم خدمة سحابة ساخنة أخرى في السوق.

يكفي من chitchat ... الآن دعنا نصل إلى العمل.

الخطوة 1: قم بإنشاء تطبيق Node الرائع

لنقم بإنشاء تطبيق Node الرائع أولاً.

قم بإنشاء مجلد على جهازك المحلي ومنحه اسمًا (حسب اختيارك) ، يقول MySuperCoolApp.

أضف ملفًا باسم package.json والصقه المحتوى أدناه. هذا الملف هو المعلومات الأساسية لحزمة لدينا. (يمكن أيضًا إنشاء هذا عن طريق كتابة الأمر npm init وقبول جميع الإعدادات الافتراضية.)

{
"الاسم": "supercoolnodeapp" ،
"الإصدار": "1.0.0" ،
"الوصف": "تطبيق العقدة الفائقة" ،
"الرئيسي": "app.js" ،
"نصوص": {
"start": "node app.js"
}،
"مخزن": {
"النوع": "بوابة" ،
"موقع المعلومات العالمي": ""
}،
"مؤلف": ""،
"الترخيص": "مركز الدراسات الدولي" ،
"الأخطاء": {
"موقع المعلومات العالمي": ""
}،
"الصفحة الرئيسية": ""
}

أحد التغييرات المهمة للغاية التي يجب ملاحظتها هو هذا الخط:

"start": "node app.js"

بعد النشر ، سيقوم Azure بتشغيل هذا الأمر لبدء تطبيقك.

أضف ملفًا ، app.js ، والصق الكود أدناه. ستكون هذه نقطة الانطلاق لتطبيقنا.

const http = require ('http') ؛
const port = process.env.PORT || 3000
const server = http.createServer ((req، res) => {
res.statusCode = 200؛
res.setHeader ('Content-Type'، 'text / html')؛
res.end ('

Hello World

') ؛
})؛
server.listen (port، () => {
console.log (`خادم يعمل في منفذ` + ميناء) ؛
})؛

يفتح هذا الرمز منفذًا على الخادم المحلي ويقدم بعض HTML.

يرجى ملاحظة كتلة الرمز الأكثر أهمية هنا:

const port = process.env.PORT || 3000

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

احفظ الملف وقم بتشغيل الأمر أدناه في نافذة موجه الأوامر (والذي يفتح داخل المجلد):

العقدة app.js

مع هذا ، سوف تبدأ العقدة الخادم وتظهر الرسالة أدناه:

الآن ، إذا فتحنا http: // localhost: 3000 / في المتصفح ، فسنرى هذا:

رائع! أنشأنا التطبيق Nodejs الأساسية ولكن رائع.

الخطوة 2: اضغط على GitHub

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

لنقم بإنشاء مستودع على GitHub بالنقر فوق مستودع جديد.

اعطها اسماً ، وبعض الوصف ، وانقر فوق "إنشاء مستودع":

سوف ينشئ GitHub مستودعًا ويمنحك بعض الأوامر التي يمكنك تشغيلها محليًا حتى تتمكن من استنساخ مجلدك المحلي مع مستودع GitHub الخاص بك.

افتح موجه الأوامر داخل التطبيق الخاص بك حيث يوجد ملف package.json. في موجه الأوامر ، قم بتشغيل الأوامر أدناه في هذا التسلسل.

  1. تهيئة مستودع Git على مستوى الجذر:
بوابة الحرف الأول

2. إضافة جميع الملفات إلى بوابة المحلية الخاصة بك (التدريج). لاحظ النقطة الأخيرة:

بوابة إضافة.

3. قم بإجراء تغييرات على Git المحلي الخاص بك:

بوابة الالتزام - "الالتزام الأول"

4. رابط إلى مستودع جيثب الخاص بك. (يرجى تغيير عنوان URL للإشارة إلى مستودعك.)

git بعد إضافة الأصل https://github.com/rramname/MySuperCoolNodeApp.git

5. ودفع التغيير الخاص بك:

بوابة دفع - تعيين أصل المنبع

يجب أن تشاهد رسائل مثل أدناه في موجه الأوامر.

الآن إذا قمت بفتح GitHub وتحديث المستودع ، يجب أن تكون قادرًا على رؤية الرمز.

الخطوة 3: الآن ، دعنا نصل الأمر إلى أزور

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

افتح portal.azure.com وقم بتسجيل الدخول بأوراق اعتمادك.

انقر فوق "إنشاء مورد جديد" في الجزء العلوي الأيسر. أدخل "تطبيق الويب" في مربع البحث للحصول على نوع المورد المطلوب واضغط على Enter.

حدد تطبيق ويب من نتائج البحث.

وانقر فوق زر إنشاء.

سيُطلب منا تقديم بعض المعلومات الأساسية لهذا التطبيق:

المربع الأول هو اسم التطبيق الخاص بك. وهو سهل للغاية منذ SuperCoolNodeApp :)

الخيار الثاني هو الاشتراك. لقد قمت بالتسجيل في اشتراك "Pay As You Go" منذ أن استهلكت الإصدار التجريبي المجاني مني. يمكنك اختيار خطة الاشتراك المجاني هنا.

التالي هو مجموعة الموارد. هذا هو التجميع المنطقي للتطبيقات الخاصة بك على Azure. يمكنك إنشاء جديد لهذا التطبيق أو استخدام التطبيقات الحالية. لقد أنشأت واحدة جديدة لهذا التطبيق باسم SuperCoolNodeApp.

بعد ذلك ، في النهاية ، سيتعين عليك تحديد خطة خدمة التطبيق. لقد قمت بإنشاء خطة مجانية تحمل اسم Test Plan. يمكنك إنشاء خطة جديدة إذا لم يكن لديك بالفعل خطة ولكن تأكد من تحديد نسخة مجانية. أثناء التحديد ، تحدد Azure تلقائيًا الفئة S1 التي ليست مجانية. تأكد من تغييره إلى خطة مجانية للعرض التوضيحي (بالطبع ، إذا كنت تريد قدرات أعلى ، قوى معالجة ، إلخ ، اذهب إلى الخطط المدفوعة.)

انقر فوق إنشاء.

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

الآن ، انقر فوقها للاطلاع على تفاصيل التطبيق الذي أنشأناه للتو.

يعرض التفاصيل مثل الاشتراك الذي تعمل عليه الخطة والحالة مثل قيد التشغيل ومعرف الاشتراك والموقع على الخادم الذي يستضيفه التطبيق على "الولايات المتحدة الوسطى" وبعض تفاصيل بروتوكول نقل الملفات. ولكن الشيء الأكثر أهمية هنا هو عنوان URL. سيكون عنوان URL لتطبيقنا في السحابة.

الآن دعنا نصل إلى هناك ...

هناك القليل من تنبيه المفسد ، :) في هذا القسم ، سنقوم بتكوين استراتيجية النشر لتطبيقنا.

انتقل لأسفل وانقر على خيارات النشر.

انقر فوق "تكوين الإعدادات المطلوبة" وحدد GitHub. يجب أن تظهر لك الشاشة أدناه.

انقر فوق اختيار المشروع. هذا يجب أن يوضح لك جميع المستودعات على حساب جيثب الخاص بك.

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

هنا سوف تقوم بتحديد MySuperCoolNodeApp الذي دفعته إلى جيثب.

بعد ذلك ، يمكننا تحديد الفرع الذي نريد نشره منه.

في الوقت الحالي ، لدي ماجستير فقط ، لذلك سأترك الافتراضي.

وهذا كل شيء. انقر فوق موافق.

سوف أزور رعاية نشر التطبيق. سيُظهر لك هذا الإشعار الصغير بأن Azure في طريقه للقيام بهذه المهمة.

عندما يتم ذلك (والذي لا ينبغي أن يستغرق وقتًا طويلاً بالفعل) ، انقر فوق خيارات النشر مرة أخرى. يجب أن تكون قادرًا على رؤية آخر عملية نشر.

إذا قمت بالنقر فوق السجل ، فسيقوم Azure بعرض سجل حدث النشر.

رائع. الآن ، إذا قمت بفتح التطبيق الخاص بك عن طريق الانتقال إلى عنوان URL المذكور في قسم النظرة العامة https://supercoolnodeapp.azurewebsites.net/ ، تتوقع ظهور رسالة Hello World ولكن بدلاً من ذلك ترى الخطأ أدناه.

هاه ... ما هو الخطأ؟ توضح السجلات أن التطبيق قد تم نشره ، ولا ترى أي أخطاء ، لكن التطبيق لا يعمل. انها لغزا.

هناك إعداد واحد صغير تحتاج إلى القيام به على بوابة Azure لمساعدة Azure في التعامل معه كتطبيق Nodejs وبدء تشغيله وفقًا لذلك.

افتح "إعدادات التطبيق" وانتقل لأسفل إلى قسم "إعدادات التطبيق" وقم بإضافة الإدخال أدناه.

اسم إعداد التطبيق: WEBSITE_NODE_DEFAULT_VERSION
القيمة: 8.9.0

إنها تخبر Azure أساسًا باستخدام إصدار Node وفتح موقع الويب.

انقر فوق حفظ في الأعلى.

الآن إذا ذهبت إلى URL https://supercoolnodeapp.azurewebsites.net/

فوردعالم !!! ها أنت ذا. لقد حصلنا على تطبيق Node الرائع الخاص بنا وتشغيله في Azure.

تهانينا!! الآن في كل مرة تقوم فيها بإجراء أي تغيير على تطبيقك والدفع إلى GitHub ، ستلاحق Azure تلك وتنفذ عملية النشر المستمرة.

ملاحظة: إذا كنت قد أنشأت تطبيقًا أكثر برودة من تطبيقي :) ، فالرجاء المشاركة.

إذا كان هذا المقال ساعدك ، فأنا أحب التصفيق هنا ويتواصل على twitter :)

أنا أكتب فقط عن البرمجة والتكنولوجيا على تويتر.

إستمتع!!