Docker Engine daemon.json: نجی ECR اور S3 کے لیے پراکسی بائی پاس
VPC اینڈ پوائنٹس کے ذریعے نجی ECR امیج پل کرتے وقت HTTP پراکسی بائی پاس کرنے میں S3 لیئر ڈاؤن لوڈز کو مدنظر رکھیں۔
نجی ECR رجسٹری سے کامیاب رابطہ امیج پل مکمل نہیں کرتا۔ ECR مینی فیسٹ فراہم کرتا ہے، جبکہ امیج کی لیئرز Amazon S3 میں محفوظ ہوتی ہیں۔ اس لیے صرف رجسٹری کو محیط بائی پاس لیئر ڈاؤن لوڈ کو مختلف راستے پر چھوڑ سکتا ہے۔
VPC اینڈ پوائنٹس کے ذریعے نجی رسائی کے لیے دونوں راستے جانچیں:
- ECR انٹرفیس اینڈ پوائنٹ اور اس کی نجی DNS ترتیب۔
- S3 اینڈ پوائنٹ، اس سے منسلک روٹ ٹیبلز، اور ECR کی لیئر بالٹی تک رسائی کی اجازت دینے والی پالیسی۔
پھر متعلقہ بائی پاس نام پل کرنے والے عمل پر رکھیں۔ موجودہ daemon.json پراکسی ترتیب والے مقامی Docker Engine کے لیے us-east-2 کی مثال ترتیب یہ ہے:
{
"proxies": {
"http-proxy": "http://proxy.example:8080",
"https-proxy": "http://proxy.example:8080",
"no-proxy": "123456789012.dkr.ecr.us-east-2.amazonaws.com,prod-us-east-2-starport-layer-bucket.s3.us-east-2.amazonaws.com"
}
}
مطلوبہ اندراجات کو daemon کی دیگر سیٹنگز اور موجودہ بائی پاس فہرست کے ساتھ ملا دیں۔ اگر دیگر عوامی رجسٹری ڈاؤن لوڈز عوامی ثالث استعمال کر سکتے ہیں، تو بغیر اکاؤنٹ والے پراکسی URLs کے لیے HTTP پراکسی فہرست امیدوار فراہم کرتی ہے؛ نجی ECR اور S3 بائی پاس برقرار رکھیں۔ اکاؤنٹ، علاقے اور لیئر ڈاؤن لوڈ hostname کو ان ناموں سے بدلیں جو پل دراصل استعمال کرتا ہے۔ S3 ناموں کی صورتیں اور اینڈ پوائنٹ ترتیبات مختلف ہو سکتی ہیں؛ یہ مثال AWS اینڈ پوائنٹس کی مکمل فہرست نہیں ہے۔ daemon ترتیب کا اطلاق مطلوبہ daemon ری اسٹارٹ کا تقاضا کرتا ہے۔ Docker Desktop اپنی پراکسی سیٹنگز استعمال کرتا ہے۔
بائی پاس براہ راست راستہ منتخب کرتا ہے۔ یہ غیر موجود S3 اینڈ پوائنٹ نہیں بنا سکتا، روٹ ٹیبل منسلک نہیں کر سکتا، بالٹی رسائی نہیں دے سکتا اور نہ نجی DNS درست کر سکتا ہے۔ بائی پاس کو وسیع AWS ڈومینز تک بڑھانے سے پہلے ان انحصارات کی تصدیق کریں۔
Docker کلائنٹ کی کنٹینر پراکسی سیٹنگز daemon کے امیج ڈاؤن لوڈز کو ترتیب نہیں دیتیں۔ اسی طرح، ECR لاگ ان اسناد حاصل کرنے والا AWS CLI کمانڈ کی اپنی پراکسی ترتیب ہوتی ہے؛ اس کا API منزل شامل کریں اگر اس الگ درخواست کو بھی نجی رسائی درکار ہو۔