ڈوکر میں ازگر کا فلاسک

Wkr My Azgr Ka Flask



اس ٹیوٹوریل میں، ہم یہ سیکھنے جا رہے ہیں کہ Docker کا استعمال کرتے ہوئے Python Flask ایپلی کیشن کو کنٹینرائز کرنے کا طریقہ۔

کنٹینرائزیشن ایک مہاکاوی خصوصیت ہے جو ہمیں ڈویلپرز کو ایک واحد یونٹ میں مطلوبہ انحصار کے ساتھ ایک ایپلیکیشن پیک کرنے کی اجازت دیتی ہے۔ اس کے بعد ہم کنٹینر کو منتقل کر سکتے ہیں اور مطابقت کے بارے میں فکر کیے بغیر ایپلیکیشن کو ماحول میں تعینات کر سکتے ہیں۔

فلاسک کیا ہے؟

فلاسک ازگر کے لیے ایک کم سے کم اور ہلکا پھلکا مائیکرو ویب فریم ورک ہے۔ یہ وہ ضروری خصوصیت اور لائبریریاں فراہم کرتا ہے جو Python زبان کا استعمال کرتے ہوئے ہلکے وزن کی ویب ایپلیکیشن بنانے کے لیے درکار ہیں۔







فلاسک ویب سرور گیٹ وے انٹرفیس یا WSGI معیار کی پیروی کرتا ہے جو ہمیں ایک لچکدار پیٹرن کے ساتھ ایک کم سے کم ڈیزائن کو شامل کرنے کی اجازت دیتا ہے جو HTTP درخواست اور دیگر خصوصیات کو سنبھال سکتا ہے۔ مثال کے طور پر، فلاسک ویب فیچرز کو سپورٹ کرتا ہے جیسے کہ روٹنگ، ڈیٹا بیس، اور بہت کچھ۔



شرائط:

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



  1. آپ کی مشین پر Python انٹرپریٹر انسٹال ہے (ورژن 3.11 اور اس سے اوپر کی سفارش کی جاتی ہے)
  2. میزبان مشین پر نصب ڈوکر انجن (ورژن 23 اور اس سے اوپر کی سفارش کی جاتی ہے)
  3. آپ کی پسند کا ٹیکسٹ ایڈیٹر یا IDE

دی گئی ضروریات کو پورا کرنے کے ساتھ، ہم اس ٹیوٹوریل کے ساتھ آگے بڑھ سکتے ہیں۔





فلاسک ایپلیکیشن بنائیں

جیسا کہ آپ اندازہ لگا سکتے ہیں، پہلا قدم Python ایپلی کیشن بنانا ہے جسے ہم کنٹینرائز کرنا چاہتے ہیں۔ ہمارے معاملے میں، ہم اسے ایک کم سے کم ایپ کے ساتھ ظاہر کرتے ہیں جو 'ہیلو ورلڈ' کو پرنٹ کرتی ہے۔

اپنے پروجیکٹ کے سورس کوڈ کو اسٹور کرنے کے لیے ایک نئی ڈائرکٹری بنائیں اور 'app.py' کے نام سے ایک Python فائل بنائیں۔



اپنے پسندیدہ ٹیکسٹ ایڈیٹر یا IDE کے ساتھ 'app.py' میں ترمیم کریں اور اپنی درخواست کے لیے کوڈ درج ذیل شامل کریں:

سے فلاسک درآمد فلاسک

ایپ = فلاسک ( __نام__ )
@ ایپ راسته ( '/' )
def ہیلو_دنیا ( ) :
واپسی '

ہیلو، ورلڈ!

'

ایک ڈاکر فائل بنائیں

اگلا، ہمیں ان ہدایات کی وضاحت کرنے کی ضرورت ہے جو ہمیں ایپلیکیشن کو ڈوکر امیج کے طور پر پیک کرنے کی اجازت دیتی ہیں۔ ہم Dockerfile استعمال کرتے ہیں جس میں تصویر کو سیٹ اپ کرنے کے لیے تمام ہدایات اور ٹولز شامل ہیں۔

اسی ڈائرکٹری میں 'hello.py' کے طور پر، بغیر توسیع کے 'Dockerfile' نامی ایک نئی فائل بنائیں۔ درج ذیل کمانڈ کو چلائیں:

$ ٹچ ڈوکر فائل

فائل میں ترمیم کریں اور درج ذیل کوڈ شامل کریں:

سرکاری ازگر کی تصویر کو بنیادی تصویر کے طور پر استعمال کریں۔

ازگر سے: 3.12 -rc-slim
ورکڈائر/ایپ
کاپی کریں /ایپ
# فلاسک انسٹال کریں۔
چلائیں پائپ انسٹال --no-cache- تم -r کی ضروریات۔ TXT
# فلاسک ایپ کے لیے پورٹ 5000 کو بے نقاب کریں۔
بے نقاب 5000
# فلاسک ایپلیکیشن چلائیں۔
سی ایم ڈی [ 'ازگر' ، 'app.py' ]

پچھلا ڈاکر فائل درج ذیل کام کرتا ہے:

  • سرکاری Python 3.12 سلم امیج کو بیس امیج کے طور پر استعمال کرتا ہے۔
  • کنٹینر کے اندر ورکنگ ڈائرکٹری کو '/app' پر سیٹ کرتا ہے۔
  • پروجیکٹ ڈائرکٹری کے مواد کو کنٹینر میں کاپی کرتا ہے۔
  • 'requirements.txt' فائل کا استعمال کرتے ہوئے 'pip install' چلا کر فلاسک اور کوئی دوسری انحصار انسٹال کرتا ہے۔
  • فلاسک ایپلیکیشن کے لیے پورٹ 5000 کو بے نقاب کرتا ہے۔
  • فلاسک ایپلیکیشن کو چلانے کے لیے کمانڈ کی وضاحت کرتا ہے۔

یقینی بنائیں کہ 'requirements.txt' فائل پروجیکٹ ڈائرکٹری میں موجود ہے اور فائل کے مندرجات کو شامل کریں جیسا کہ درج ذیل میں دکھایا گیا ہے:

فلاسک == 2.3.3

اس صورت میں، ہم واضح کرتے ہیں کہ ہم فلاسک ورژن 2.3.3 انسٹال کرنا چاہتے ہیں۔

ڈوکر امیج بنائیں

اب جبکہ ہمارے پاس فلاسک ایپلیکیشن اور ڈاکر فائل تیار ہے، ہم آگے بڑھ سکتے ہیں اور درج ذیل کمانڈ کے ساتھ امیج بنا سکتے ہیں۔

docker build-t flask-docker-app۔

پچھلی کمانڈ چلانے سے پہلے یقینی بنائیں کہ آپ پروجیکٹ ڈائرکٹری میں ہیں۔ آپ flask-docker-app کو اس نام سے بدل سکتے ہیں جسے آپ اپنی تصویر کو تفویض کرنا چاہتے ہیں۔

ڈوکر کنٹینر چلائیں۔

ڈوکر امیج کی تعمیر کے ساتھ، ہم 'ڈوکر رن' کمانڈ کا استعمال کرتے ہوئے تصویر کی بنیاد پر کنٹینر چلا سکتے ہیں:

docker run -p 5000 : 5000 flask-docker-app

اسے ایک کنٹینر بنانا چاہیے اور میزبان سسٹم پر پورٹ 5000 کو کنٹینر سے پورٹ 5000 تک نقشہ بنانا چاہیے۔

ایک بار عمل میں آنے کے بعد، براؤزر کھولیں اور تشریف لے جائیں۔ http://localhost:5000 .

آپ کو 'ہیلو، ورلڈ!' دیکھنا چاہئے! فلاسک ایپلیکیشن کا پیغام۔

نتیجہ

اس ٹیوٹوریل میں، آپ نے سیکھا کہ Docker کا استعمال کرتے ہوئے ایک سادہ Python Flask ایپلی کیشن کو کنٹینرائز کرنا ہے۔