منصوبے کے بارے میں
debux ایک اوپن سورس کنٹینر ڈیبگر ہے جو Docker اور Kubernetes ماحول کے لیے ڈیزائن کیا گیا ہے۔ یہ ایک عام مسئلہ حل کرتا ہے: پروڈکشن طرز کے کنٹینرز کو ڈیبگ کرنا جن میں شیل یا پیکیج مینیجر موجود نہیں ہوتے، جیسے distroless، scratch، اور minimal امیجز۔ `docker exec` کے برعکس، جسے ٹارگٹ امیج کے اندر ٹولز اور شیل کی ضرورت ہوتی ہے، debux ایک علیحدہ ڈیبگ ٹول باکس کنٹینر شروع کرتا ہے جو ٹارگٹ سے منسلک ہوتا ہے، مفید نام اسپیس (نیٹ ورک، پروسیس) شیئر کرتا ہے، اور ٹارگٹ فائل سسٹم کو `$DEBUX_TARGET_ROOT` (عام طور پر `/proc/1/root`) پر ظاہر کرتا ہے۔
اہم صلاحیتیں شامل ہیں:
- **کسی بھی کنٹینر کے ساتھ کام کرتا ہے**: چل رہے، رکے ہوئے، بند، یا کریش لوپ کرنے والے کنٹینرز کو ڈیبگ کرتا ہے، بشمول وہ جن میں شیل یا پیکیج مینیجر نہیں ہیں۔
- **Docker اور Kubernetes سپورٹ**: مقامی Docker کنٹینرز، Docker Compose سروسز، Podman کنٹینرز، اور Kubernetes pods کے لیے متحد ورک فلو۔ Kubernetes نوڈس کو ہوسٹ نام اسپیس تک رسائی کے ساتھ ڈیبگ کرنے کی بھی حمایت کرتا ہے۔
- **تیار ٹول باکس**: پہلے سے نصب ٹولز میں curl، wget، dig، nmap، tcpdump، strace، ltrace، gdb، htop، vim، jq، git، openssh، zsh، tmux، اور مزید شامل ہیں۔ ٹول باکس Wolfi پر مبنی ہے اور پیکیج مینجمنٹ کے لیے mise استعمال کرتا ہے۔
- **طلب پر ٹول انسٹالیشن**: `dctl` کمانڈ ڈیبگ سیشن کے دوران mise کا استعمال کرتے ہوئے اضافی ٹولز انسٹال کرتا ہے۔ ٹولز کو سیشن شروع میں `--tools` کے ساتھ پہلے سے لوڈ کیا جا سکتا ہے۔
- **ٹارگٹ سے آگاہ شیل**: ٹارگٹ روٹ میں جائیں، ٹارگٹ پروسیسز کا معائنہ کریں، ٹارگٹ نیٹ ورک نام اسپیس دوبارہ استعمال کریں، اور جب ٹول باکس میں موجود نہ ہوں تو chroot کے ذریعے ٹارگٹ کے اپنے بائنریز چلائیں۔
- **پورٹ فارورڈنگ اور فائل کاپی**: کسی بھی ٹارگٹ سے فائلیں حاصل کریں اور کھینچیں، یہاں تک کہ وہ کنٹینرز جو `-p` کے بغیر شروع کیے گئے ہیں اور distroless pods جہاں `kubectl cp` ناکام ہوتا ہے۔
- **Kubernetes کاپی موڈ**: جب ephemeral کنٹینرز RBAC یا ایڈمیشن پالیسی سے مسدود ہوں، `--copy` ڈیبگنگ کے لیے ایک عارضی ڈپلیکیٹ پوڈ بناتا ہے۔ TTL، Karpenter تحفظ، اور دوبارہ منسلک ہونے کی صلاحیتوں کے ساتھ طویل مدتی کاپی سیشنز کی حمایت کرتا ہے۔
- **نوڈ ڈیبگنگ**: `debux node` Kubernetes نوڈ پر ہوسٹ نام اسپیس ٹول باکس پوڈ شیڈول کرتا ہے، نوڈ روٹ فائل سسٹم ماؤنٹ کرتا ہے اور PID، نیٹ ورک، اور IPC نام اسپیس شیئر کرتا ہے۔
- **امیج ڈیبگنگ**: امیج کو شروع کیے بغیر ڈیبگ کریں، مفید جب امیج خود بوٹ نہیں ہو سکتی۔
- **TUI انٹرفیس**: مکمل اسکرین ٹارگٹ براؤزر جس میں Docker، Kubernetes سیاق/نام اسپیس نیویگیشن، فعال سیشن دوبارہ منسلک، حالیہ سیشنز، اور آپشن ٹوگلز شامل ہیں۔
- **شیل تکمیل**: پیدا کردہ تکمیلیں ذیلی سٹرنگ میچنگ کے ساتھ لائیو Docker اور Kubernetes ٹارگٹس شامل کرتی ہیں۔
یہ ٹول ایک واحد بائنری کے طور پر تقسیم کیا جاتا ہے جس میں انسٹالر اسکرپٹ ہے جو Linux اور macOS پر amd64/arm64 کے لیے سپورٹ کرتا ہے۔ ریلیز اثاثے چیکسم سے تصدیق شدہ ہیں، اور اختیاری cosign دستخط کی تصدیق کی حمایت کی جاتی ہے۔ پروجیکٹ MIT لائسنس کے تحت ہے۔
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.