ڈوکر 'اجازت سے انکار' غلطی

Wkr Ajazt S Ankar Ghlty



ڈوکر کے ساتھ کام کرتے وقت، آپ کو ایک ایسی مثال کا سامنا کرنا پڑ سکتا ہے جہاں کمانڈ 'اجازت سے انکار' کی غلطی لوٹاتی ہے۔ یہ خرابی اس وقت ہوتی ہے جب آپ ڈوکر کو کمانڈ کے لیے کافی اجازتوں کے بغیر چلانے کی کوشش کرتے ہیں۔

ڈوکر کو متعلقہ کمانڈز کو بطور ڈیفالٹ انجام دینے کے لیے سوڈو یا روٹ کی اجازت درکار ہوتی ہے۔ مطلوبہ مراعات کے بغیر کسی بھی کمانڈ کو چلانے کی کوشش بدنام زمانہ 'اجازت سے انکار' کی غلطی کا باعث بنتی ہے۔







یہ ٹیوٹوریل مختلف طریقے اور تکنیک فراہم کرتا ہے جو آپ Docker کمانڈز کو چلانے کی کوشش کرتے وقت 'اجازت سے انکار' کی غلطی کو ٹھیک کرنے کے لیے استعمال کر سکتے ہیں۔



ذہن میں رکھیں کہ یہ بغیر جڑ کے ماحول میں ڈوکر چلانے کے عمل کا احاطہ نہیں کرتا ہے۔ آپ روٹ لیس ڈوکر پر ہمارے ٹیوٹوریل کو درج ذیل وسائل میں دیکھ سکتے ہیں۔



تقاضے:

جیسا کہ آپ اندازہ لگا سکتے ہیں، اس پوسٹ کے ساتھ پیروی کرنے کے لیے، آپ کو درج ذیل چیزوں کا ہونا ضروری ہے:





    1. ڈوکر ورژن 20.0 اور اس سے اوپر
    2. میزبان سسٹم پر سوڈو یا روٹ کی اجازت

'اجازت سے انکار' کی خرابی کیا ہے؟

جب ڈوکر میں 'اجازت سے انکار' کی غلطی ہوتی ہے، تو اس کا مطلب ہے کہ میزبان سسٹم ناکافی اجازتوں کی وجہ سے ڈوکر ڈیمون کے ساتھ مواصلت قائم نہیں کر سکتا۔ ایک مثال مندرجہ ذیل میں دکھایا گیا ہے:

$ ڈاکر رن -یہ مصروف خانہ ایسیچ



اگر آپ کو دی گئی غلطی کا سامنا کرنا پڑتا ہے، تو آپ اسے ٹھیک کرنے کا طریقہ سیکھنے کے لیے درج ذیل طریقوں میں سے کچھ استعمال کر سکتے ہیں۔



طریقہ 1: ڈوکر کو روٹ کے طور پر چلائیں۔

ڈوکر کی 'اجازت سے انکار' کی غلطی کو حل کرنے کا پہلا اور سب سے واضح طریقہ 'sudo' کمانڈ کا استعمال کر رہا ہے۔ اگر آپ کے پاس sudo مراعات ہیں، تو آپ sudo کا استعمال کرتے ہوئے متعلقہ کمانڈ چلا کر اسے ٹھیک کر سکتے ہیں۔

مثال کے طور پر، مذکورہ غلطی کو ٹھیک کرنے کے لیے، ہم ذیل میں کمانڈ سے پہلے sudo کو شامل کر سکتے ہیں:

$ sudo ڈاکر رن -یہ مصروف خانہ ایسیچ



جیسا کہ آپ دیکھ سکتے ہیں، Docker کامیابی سے مطلوبہ تصاویر کھینچتا ہے اور کنٹینر چلاتا ہے۔

طریقہ 2: ڈوکر ڈیمون کو دوبارہ شروع کریں۔

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

مندرجہ ذیل طور پر ڈاکر ڈیمون کی حیثیت کی جانچ کرکے شروع کریں:

$ ڈوکر سسٹم سی ٹی ایل اسٹیٹس ڈوکر



ایک بار جب آپ یہ یقینی بناتے ہیں کہ ڈوکر چل رہا ہے، درج ذیل کمانڈ کے ساتھ سروس کو دوبارہ شروع کریں:

$ sudo systemctl دوبارہ شروع ڈاکر


اس سے ڈوکر ڈیمون کو بوٹ کرنا چاہئے اور کسی بھی ممکنہ مسئلے کو حل کرنا چاہئے جو آپ کو کوئی کمانڈ چلانے سے روک رہا ہے۔

طریقہ 3: نان روٹ صارف کو فعال کریں۔

ایک اور طریقہ جسے آپ Docker میں 'اجازت سے انکار' کی غلطی کو حل کرنے کے لیے استعمال کر سکتے ہیں وہ ہے نان روٹ صارفین کو Docker کمانڈز پر عمل کرنے کی اجازت دینا۔

اس طریقہ کو فعال کرنے کے لیے، میزبان سسٹم میں لاگ ان کریں اور Docker کے لیے ایک نیا گروپ بنائیں۔

$ sudo گروپ ایڈ -f ڈاکر


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

$ sudo usermod -aG docker linuxhint


پچھلی کمانڈ کو linuxhint صارف کو Docker گروپ میں شامل کرنا چاہیے۔

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

$ نیو جی آر پی ڈاکر


ایک بار مکمل ہونے کے بعد، آپ Docker گروپ میں کسی بھی صارف کے لیے sudo استعمال کیے بغیر کوئی بھی Docker کمانڈ چلا سکتے ہیں۔

طریقہ 4: ڈوکر کی اجازتوں کو دوبارہ ترتیب دیں۔

اگلا طریقہ جو آپ استعمال کرسکتے ہیں وہ ہے ڈوکر ساکٹ کے لیے اجازتوں کو دوبارہ ترتیب دینا۔ درج ذیل کمانڈ کو چلا کر ڈوکر یونکس ساکٹ کی ملکیت کو تبدیل کرکے شروع کریں:

$ sudo chown جڑ: ڈاکر / تھا / رن / docker.sock


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

$ sudo chown -آر ' $USER ' : ' $USER ' $HOME / .docker


آخر میں، ڈائرکٹری کو پڑھنے اور لکھنے کی اجازت کے ساتھ گروپ کو اس طرح تفویض کریں:

$ sudo chmod -آر g+rw ' $HOME /.docker'


فراہم کردہ طریقوں کو ضروری ڈوکر فائلوں اور ڈائریکٹریوں کے لیے کافی اجازتیں متعین کرنی چاہئیں۔

نتیجہ

اس ٹیوٹوریل میں، ہم نے سیکھا کہ ڈوکر کمانڈ کی درخواست کرتے وقت ہم ڈوکر 'اجازت سے انکار' کی غلطی کو حل کرنے کے لیے چار اہم طریقے کیسے استعمال کر سکتے ہیں۔