Node.js ایپلیکیشن کو ڈاکرائز کرنے کا طریقہ

Node Js Ayplykyshn Kw Akrayz Krn Ka Tryq



کسی ایپلیکیشن کو ڈوکرائز کرنے میں ایپلی کیشن کو عمل میں لانے کے لیے درکار تمام شرائط کی وضاحت کرنا اور پھر ڈوکر فائل کا استعمال کرتے ہوئے ایک خصوصی ڈوکر امیج بنانا شامل ہے جسے مختلف مشینوں کے ساتھ شیئر کیا جا سکتا ہے۔ ڈاکرائزنگ ایک ' Node.js ایپلیکیشن مستقل مزاجی کو بڑھاتی ہے، اور ڈویلپر کے آخر میں آسان ڈیبگنگ کو یقینی بناتی ہے۔

شرطیں







ڈاکرائز کرنے کے لیے شرائط ' Node.js درخواست میں درج ذیل شامل ہیں:



  • ڈوکر کی تنصیب۔
  • Node.js ایپلیکیشن کی بنیادی تفہیم۔

Node.js ایپلیکیشن کو ڈاکرائز کیسے کریں؟

ایک ' Node.js درخواست کو درج ذیل مراحل کے ذریعے ڈوکرائز کیا جاسکتا ہے۔



مرحلہ 1: ایک 'package.json' فائل بنائیں





سب سے پہلے، ایک نئی ڈائریکٹری بنائیں جہاں تمام فائلیں شامل ہوں گی۔ اس ڈائرکٹری کے اندر، بنائیں ' package.json ' فائل جو ایپ کو اس کے انحصار کے ساتھ نمائندگی کرتی ہے:

{
'نام' : 'docker_web_app' ,
'ورژن' : '1.0.0' ,
'تفصیل' : 'Docker پر Node.js' ,
'مصنف' : 'پہلا آخری ' ,
'مرکزی' : 'server.js' ,
'اسکرپٹس' : {
'شروع' : 'node server.js'
} ,
'انحصارات' : {
'اظہار' : '^4.18.2'
} }



مرحلہ 2: ایک 'package-lock.json' فائل بنائیں

'package.json' فائل کے اندر، 'عملدآمد کریں' این پی ایم انسٹال کریں۔ 'cmdlet. یہ ایک پیدا کرے گا ' package-lock.json ' فائل جو ڈوکر امیج پر کاپی کی گئی ہے، اس طرح:

این پی ایم انسٹال کریں

مرحلہ 3: سرور بنائیں

اس کے بعد، ایک بنائیں ' server.js ' فائل جو ایک ویب ایپ کا اعلان کرتی ہے ' Express.js فریم ورک:

'سخت استعمال کریں' ;

const express = درکار ( 'اظہار' ) ;

const PORT = 8080 ;
const HOST = '0.0.0.0' ;

const ایپ = ایکسپریس ( ) ;
app.get ( '/' , ( req، res ) = > {
res.send ( 'ہیلو ورلڈ' ) ;
} ) ;

app.listen ( پورٹ، میزبان، ( ) = > {
console.log ( ` http پر چل رہا ہے: // ${HOST} : ${PORT} ` ) ;
} ) ;

اب، آئیے ڈوکر کنٹینر کے اندر ایک آفیشل ڈوکر امیج کے ذریعے ایپلی کیشن کو عمل میں لانے کے طریقہ کار پر چلتے ہیں۔

مرحلہ 4: ایک ڈاکر فائل بنائیں

تمام فائلوں پر مشتمل اسی ڈائریکٹری میں دستی طور پر ایک ڈاکر فائل بنائیں۔ اس فائل میں، کوڈ کی درج ذیل لائن لکھیں:

نوڈ سے: 18
ورکڈائر / usr / src / ایپ
پیکیج کاپی کریں۔ * .json /
Npm چلائیں۔ انسٹال کریں
کاپی کریں .
بے نقاب 8080
سی ایم ڈی [ 'نوڈ' , 'server.js' ]

مندرجہ بالا کوڈ کے ٹکڑوں میں، ذیل میں دیے گئے اقدامات کا اطلاق کریں:

  • سب سے پہلے، نوڈ کے تازہ ترین طویل مدتی سپورٹ ورژن 18 کو ایک بنیادی تصویر کے طور پر استعمال کریں۔ ڈاکر حب .
  • اس کے بعد، تصویر میں ایپ کوڈ رکھنے کے لیے ایک ڈائرکٹری بنائیں۔
  • یہ درخواست کے لیے ورکنگ ڈائرکٹری کی نمائندگی کرتا ہے۔
  • اب، 'کے ذریعے ایپ انحصار کو انسٹال کریں این پی ایم '
  • نوٹ: اگر npm ورژن 4 یا اس سے پہلے کا استعمال کیا جا رہا ہے، تو 'package-lock.json' فائل نہیں بنائی جائے گی۔
  • اب، کاپی کریں ' package.json 'فائل. نیز، ایپ کے سورس کوڈ کو ڈوکر امیج کے اندر بنڈل کریں ' کاپی کریں۔ 'ہدایت.
  • استعمال کریں ' بے نقاب ایپ کو پورٹ 8080 سے منسلک کرنے کی ہدایت۔
  • آخر میں، سی ایم ڈی کے ذریعے ایپلیکیشن کو انجام دینے کے لیے cmdlet کی وضاحت کریں جو رن ٹائم کی وضاحت کرتا ہے۔ یہاں، ' node server.js سرور کو شروع کرنے کے لیے cmdlet کا استعمال کیا جائے گا۔

مرحلہ 5: ایک '.dockerignore' فائل بنائیں

'. dockerignore' فائل بنائیں ڈاکر فائل ڈائرکٹری/فولڈر جس میں نیچے دیا گیا مواد شامل ہے:

node_modules
npm-debug.log

یہ مواد مقامی ماڈیولز اور ڈیبگ لاگز سے گریز کرتا ہے، بالترتیب ڈوکر امیج میں کاپی کرنے کے لیے۔

مرحلہ 6: تصویر بنائیں

اب، Dockerfile پر مشتمل ڈائرکٹری کے اندر، ذیل میں بیان کردہ cmdlet کا استعمال کرتے ہوئے تصویر بنائیں:

ڈاکر کی تعمیر -t nodejs / node-web-app

اس cmdlet میں، ' nodejs ڈائرکٹری کے نام سے مراد ہے لہذا اس کے مطابق cmdlet کی وضاحت کریں اور ' -t ” پرچم تصویر کو ٹیگ کرتا ہے۔

اب، اس کمانڈ کے ذریعے تصاویر کی فہرست بنائیں:

ڈاکر کی تصاویر

مرحلہ 7: امیج چلائیں۔

ذیل میں بیان کردہ cmdlet کا استعمال کرتے ہوئے تصویر پر عمل/چلائیں:

ڈاکر رن -p 49160 : 8080 -d nodejs / node-web-app

یہاں، ' -p ' جھنڈا ایک عوامی بندرگاہ کو کنٹینر کے اندر ایک پرائیویٹ پر ری ڈائریکٹ کرتا ہے اور ' -d ” جھنڈا کنٹینر کو علیحدہ موڈ میں چلاتا ہے، یعنی پس منظر میں۔

مرحلہ 8: ایپ کا آؤٹ پٹ تیار کریں۔

اب، درج ذیل کمانڈز کا استعمال کرتے ہوئے ایپلیکیشن کے آؤٹ پٹ کو پرنٹ کریں:

ڈاکر پی ایس
ڈاکر لاگز 77b1e3c8576e

اگر کنٹینر شیل کے اندر تشریف لے جانے کی ضرورت ہے تو، استعمال کریں ' exec cmdlet:

ڈاکر exec -یہ 77b1e3c8576e / بن / bash

یہاں، ' 77b1e3c8576e 'کنٹینر کی ID کی نمائندگی کرتا ہے جسے پھانسی کے ذریعے کاپی کیا جا سکتا ہے' ڈاکر پی ایس 'پہلے حکم.

مرحلہ 9: درخواست کی جانچ کرنا

ایپلیکیشن کی جانچ کے لیے، ایپ کی پورٹ کو بازیافت کریں جسے Docker نے میپ کیا ہے:

ڈاکر پی ایس

مندرجہ بالا cmdlet میں، Docker نے ' 8080 'کنٹینر کے اندر بندرگاہ سے بندرگاہ' 49160 'مشین پر۔

مرحلہ 10: درخواست طلب کرنا

درخواست کے ذریعے درخواست کریں ' curl cmdlet اوپر میپ شدہ پورٹ کا حوالہ دے کر اور مطلوبہ اقدار درج کر کے:

curl -میں localhost: 49160

مرحلہ 11: درخواست کو بند/مار ڈالیں۔

آخر میں، 'کے ذریعے ایپلی کیشن کو بند کریں مار ڈالو cmdlet:

ڈاکر مار ڈالو 77b1e3c8576e

اس کے علاوہ، تصدیق کریں کہ آیا درخواست اس کمانڈ کے ذریعے ان پٹ اقدار کے ساتھ رک گئی ہے:

curl -میں localhost: 49160

نتیجہ

ایک ' Node.js 'ایپلی کیشن کو سرور، ایک ڈاکر فائل، '.dockerignore' فائل بنا کر، امیج بنا کر اور چلا کر، ایپ کا آؤٹ پٹ تیار کر کے، اور ایپلیکیشن کو روکنے، بند کرنے اور اس کی تصدیق کر کے ڈوکرائز کیا جا سکتا ہے۔ اس مضمون میں Node.js ایپلیکیشن کو ڈاکرائز کرنے کے بارے میں تفصیل سے بتایا گیا ہے۔