আমি কীভাবে আমার সমস্ত ডকার পাত্রে আমার প্রক্সি ব্যবহার করতে পারি?


18

আমি দেবিয়ান জেসিতে ডকার চালাচ্ছি যা কর্পোরেট প্রক্সিটির পিছনে রয়েছে। ডকার চিত্রগুলি ডাউনলোড করতে সক্ষম হতে, আমাকে আমারটিতে নিম্নলিখিতটি যুক্ত করতে হবে/etc/defaults/docker

http_proxy="http://localhost:3128/"

আমি নিশ্চিত করতে পারি যে এটি কাজ করে।

যাইহোক, আমার ধারকটির মধ্যে থেকে ইন্টারভেবিজে অ্যাক্সেস করতে সক্ষম হওয়ার জন্য, আমাকে সমস্ত সেশন শুরু করতে হবে --net hostএবং তারপরে এই এনভির ভেরিয়েবলগুলি সেটআপ করতে হবে:

export http_proxy=http://localhost:3128/
export https_proxy=https://localhost:3128/
export ftp_proxy=${http_proxy}

আদর্শভাবে, আমি কনটেইনারটির জন্য হোস্ট নেটওয়ার্কের প্রয়োজন নেই এবং প্রক্সি সম্পর্কে জানতে না চাই (অর্থাত্ পাত্রে 20, 80, 443 পোর্টে সমস্ত আউটবাউন্ড কল হোস্টের প্রক্সি বন্দরের মধ্য দিয়ে যায়)। এটা কি সম্ভব?

ব্যর্থ হয়ে, কোনও সাইট সেটআপ করা কি সম্ভব, যা নিশ্চিত করবে যে এই এনভির ভেরিয়েবলগুলি স্থানীয়ভাবে সেট করা আছে তবে কখনও কোনও চিত্রের অংশ হিসাবে রফতানি করা যায় না?

আপডেট : আমি জানি আমি এই জিনিসগুলি --env http_proxy=...ইত্যাদির সাথে পাস করতে পারি , তবে এটি জটিল। আমি এটির বিকল্প ব্যবহার না করেই সিস্টেমের সমস্ত ব্যবহারকারীর জন্য কাজ করতে চাই।

উত্তর:


5

এই উত্তরটি দেখুন :

হোস্ট সার্ভার একটি প্রক্সি চলমান একটি ধারক চালায় (স্কুইড, এই ক্ষেত্রে) যা স্বচ্ছ প্রক্সি করতে পারে। সেই ধারকটির কিছু iptables নিয়ম রয়েছে যা প্রক্সি সার্ভারে NAT ট্রাফিক - এর অর্থ এটি পাত্রে সুবিধামত মোডে চালানো দরকার।

হোস্ট সার্ভারেও রয়েছে (এবং এখানে যাদু রয়েছে) আইপি রুট টেবিল এন্ট্রিগুলি যে কোনও কন্টেইনার থেকে সমস্ত ট্র্যাফিককে পুনরায় রুট করে তবে প্রক্সি কনটেইনারটির মাধ্যমে যে প্রক্সিটি পোর্ট ৮০ এর জন্য নির্ধারিত ছিল।

শেষ বিটটি মূলত এর অর্থ হ'ল পোর্ট 80 ট্র্যাফিকের জন্য, ধারক থেকে বিশ্বের অন্যান্য অঞ্চলের রুটটি প্রক্সি ধারক দিয়ে যায় - এটি NAT এবং স্বচ্ছ প্রক্সিটিকে সুযোগ দেয়।

https://github.com/silarsis/docker-proxy


এটি "https" এর জন্য কাজ করবে না।
সিল্ভ করা
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.