Docker পোর্ট প্রকাশ করেছে। প্রক্সি কি সেখানে শুনছে?
সংযোগ প্রত্যাখ্যাত বা রিসেট হলে প্রক্সি কনটেইনারের ভিতরের লিসেনার এবং Docker-এর হোস্ট পোর্ট ম্যাপিং পরীক্ষা করুন।
প্রকাশিত Docker পোর্ট একটি কনটেইনার এন্ডপয়েন্টের পথ দেয়। এটি প্রক্সি চালু করে না এবং ওই প্রক্রিয়া যে ঠিকানায় শোনে তা বদলায় না।
সাধারণ ব্রিজ-নেটওয়ার্ক ম্যাপিংয়ের জন্য এই তিনটি মান তুলনা করুন:
| পথের অংশ | যে মান দেখতে হবে |
|---|---|
| ক্লায়েন্ট প্রবেশ | ক্লায়েন্ট যে হোস্ট ঠিকানা ও প্রকাশিত পোর্টে সংযোগ করে |
| ফরওয়ার্ডিং লক্ষ্য | ম্যাপিং যে কনটেইনার ঠিকানা ও পোর্ট বেছে নেয় |
| সেবা | প্রক্সি কনটেইনারের ভিতরে যে ঠিকানা ও পোর্টে সত্যিই বাইন্ড করে |
কনটেইনারের ভিতরে কেবল 127.0.0.1-এ বাইন্ড করা প্রক্সি তার নেটওয়ার্ক ঠিকানায় ফরওয়ার্ড করা ট্রাফিক নাও পেতে পারে। এটি হোস্ট লুপব্যাকে কেবল হোস্ট পোর্ট প্রকাশ করার থেকে আলাদা: তা সীমিত করে কে ম্যাপিংয়ে পৌঁছাতে পারে, আর কনটেইনার লুপব্যাক ম্যাপিংকে সেবায় পৌঁছাতে বাধা দিতে পারে।
উদ্দিষ্ট ডিপ্লয়মেন্টের জন্য ভিতরের লিসেনার বেছে নিন, সঙ্গে সীমিত হোস্ট প্রকাশ ও প্রক্সি অ্যাক্সেস রাখুন। Dockerfile-এর উন্মোচিত-পোর্ট ঘোষণা কোনো সেবা চালু করে না, আর সফল কনটেইনার চালু হওয়া প্রমাণ করে না যে প্রক্রিয়াটি ফরওয়ার্ডিং লক্ষ্যে শুনছে।
ব্যর্থ সংযোগ কতদূর পৌঁছায় তা অনুসরণ করুন। প্রত্যাখ্যান ও রিসেট প্ল্যাটফর্ম ও ফরওয়ার্ডিং বাস্তবায়ন অনুযায়ী বদলায়, তাই কোনোটিই এককভাবে সেটিং চিহ্নিত করে না। সেবায় পৌঁছালে বৈধ প্রক্সি অভিবাদন খুঁজুন এবং প্রয়োজনীয় SOCKS সংস্করণ, প্রমাণীকরণ ও গন্তব্য নীতি প্রয়োগ করুন। শুধু একটি পৌঁছানোযোগ্য হোস্ট পোর্ট ওই সক্ষমতাগুলো প্রমাণ করতে পারে না।