ڈوکر کنٹینر میں ماحولیاتی متغیرات کو کیسے منتقل کیا جائے۔

How Pass Environment Variables Docker Container



ڈوکر ایک اوپن سورس پروگرام ہے جو ورچوئل مشینوں کے بجائے کنٹینرز کا استعمال کرتے ہوئے سرور ایپلی کیشنز کو چلاتا ہے۔ ڈوکر ایک ڈویلپمنٹ اور ہوسٹنگ کنفیگریشن ہے جو کم وسائل استعمال کرتی ہے ، لہذا یہ کوئی تعجب کی بات نہیں ہے کہ یہ ترقیاتی دنیا کو جھاڑ رہا ہے۔ ڈوکر ماحولیاتی متغیرات اس طریقہ کار کے لیے اہم ہیں کیونکہ وہ ڈیٹا کو محفوظ کرتے ہیں جو سافٹ ویئر تک رسائی حاصل کرنے والے ہر صارف کے اکاؤنٹ کے لیے منفرد ہے۔

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







تصویر کی تعمیر کے دوران ، ہمیں آپریٹنگ کنٹینر کو ماحولیاتی معلومات منتقل کرنے کی ضرورت پڑسکتی ہے۔ ایسا کرنے کے لیے ، ہم ENV اور ARG دونوں کمانڈز استعمال کرتے ہیں۔ ARG کمانڈ ایک متغیر تخلیق کرتا ہے جو تعمیر کے عمل کے دوران فراہم کیا جا سکتا ہے۔ ایک بار جب اس کی وضاحت ڈاکر فائل میں ہوجائے تو ، آپ امیج بلڈر کو فراہم کرنے کے لیے پیرامیٹر —build-arg استعمال کرسکتے ہیں۔ ڈاکر فائل میں ، ہمارے پاس اے آر جی کی متعدد ہدایات ہوسکتی ہیں۔ ڈاکر فائل میں ، ARG کمانڈ واحد ہے جو FROM ہدایات سے پہلے آ سکتی ہے۔



تاہم ، ENV ہدایات ماحولیاتی متغیر کو متعین کرتی ہے ، جو اس کے نتیجے میں تعمیراتی ہدایات کے لیے ماحول کی وضاحت کرتی ہے۔ ENV ہدایات تعمیراتی عمل کے ساتھ ساتھ جب کنٹینر —env پرچم کے ساتھ شروع کی جاتی ہے تو قابل رسائی ہے۔ تاہم ، ہم تصویر کی تعمیر کے دوران ENV ہدایات پاس کرنے سے قاصر ہیں۔ اے آر جی کی ہدایت میں تصویر بننے کے بعد برقرار رہنے کے قابل نہ ہونے کی خرابی ہے۔ تصویر بناتے وقت ماحولیاتی ڈیٹا کو ان لائن پاس کرنے کے لیے ، ہم صرف ENV اور ARG دونوں کو استعمال کریں گے۔ اس گائیڈ میں ، ہم آپ کو سکھائیں گے کہ ڈوکر کنٹینر میں ماحولیاتی متغیر کو کیسے منتقل کیا جائے۔



پیشگی ضروریات۔

ڈوکر کنٹینر میں ماحول کے متغیرات کو منتقل کرنے کے لیے ، آپ کے پاس اوبنٹو 20.04 لینکس سسٹم انسٹال ہونا ضروری ہے۔ نیز ، اپنے سسٹم پر ڈوکر کا تازہ ترین ورژن انسٹال کرنا یقینی بنائیں۔ اگر یہ سسٹم میں موجود نہیں ہے تو آپ نیچے دی گئی کمانڈ کا استعمال کرکے اس کی تنصیب کر سکتے ہیں۔





$ sudo apt docker.io انسٹال کریں۔

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



ماحولیاتی متغیرات کو منتقل کرنے کا طریقہ

ڈوکر کنٹینر میں ماحول کے متغیرات کو منتقل کرنے کے لیے ، آپ کو Ctrl+Alt+T کی شارٹ کٹ کلید استعمال کرکے یا اس کے سرچ بار کا استعمال کرتے ہوئے ایپلیکیشن مینو میں تلاش کرکے کمانڈ لائن ٹرمینل کھولنا ہوگا۔ اب ، نیچے دیئے گئے اقدامات پر عمل کریں:

مرحلہ 1: تصویر کھینچیں۔
اس گائیڈ کے دوران ، ہم الپائن ، ایک چھوٹی (5MB) لینکس تصویر استعمال کریں گے۔ شروع کرنے کے لیے ، درج ذیل ضمنی کمانڈ کا استعمال کرکے تصویر کو مقامی طور پر ڈاؤن لوڈ کریں:

$ سوڈو ڈوکر پل الپائن: 3۔

آؤٹ پٹ کامیاب تصویر کھینچتا دکھاتا ہے۔

مرحلہ 2: ماحولیاتی متغیرات کو پاس کرنا۔
venv پرچم کا استعمال کرتے ہوئے ، ہم اپنے ڈوکر کنٹینر کو لانچ کرتے وقت کمانڈ پرامپٹ میں ماحولیاتی متغیرات کو کلیدی قدر کے جوڑوں کے طور پر داخل کر سکتے ہیں۔ آئیے مندرجہ ذیل ضمیمہ کمانڈ کو بطور مثال استعمال کریں:

$ sudo docker run --env VARIABLE1 = foobar alpine: 3

اس کمانڈ کے لیے کوئی خاص پیداوار نہیں ہوگی۔

مرحلہ 3: ماحول کے متغیرات کی عکاسی
ماحولیاتی متغیرات کی عکاسی کرنے کے لیے ، مطلوبہ الفاظ کی برآمد کے ساتھ درج ذیل ضمنی کمانڈ استعمال کریں۔

$ برآمد VARIABLE2 = foobar2۔

اس کمانڈ کے لیے کوئی خاص پیداوار نہیں ہوگی۔

مرحلہ 4: ماحولیاتی متغیرات کی وضاحت کریں۔
اب ، ماحولیاتی متغیر کی قدر کی وضاحت کیے بغیر ، آئیے ٹرمینل میں درج ذیل کمانڈ کا استعمال کرکے ماحول کے متغیر کی وضاحت کریں:

$ sudo docker run --env VARIABLE2 alpine: 3 env

آؤٹ پٹ میں ، آپ دیکھ سکتے ہیں کہ ماحولیاتی متغیر کو کامیابی کے ساتھ ڈوکر کنٹینر میں منتقل کر دیا گیا ہے۔

نتیجہ

اس مضمون میں ، ہم نے ڈوکر میں ماحولیاتی متغیرات کے تصور اور اہمیت پر غور کیا ہے۔ نیز ، ہم نے آپ کو ماحولیاتی متغیر کو ڈوکر کنٹینر میں منتقل کرنے کے لیے مرحلہ وار گائیڈ فراہم کیا ہے۔ مجھے امید ہے کہ آپ کو ماحولیاتی متغیر کو ڈوکر کنٹینر میں منتقل کرتے وقت کوئی پریشانی نہیں ہوگی۔