ডকার হোস্টের মতো একই নেটওয়ার্কে থাকা ডিভাইস থেকে ডকার কন্টেইনারে কীভাবে পৌঁছানো যায়?


0

ডিফল্ট ডকার ব্রিজ নেটওয়ার্কে আমার লিনাক্স হোস্টে একটি ডকার কন্টেইনার রয়েছে। ধারক ইন্টারনেট পৌঁছাতে পারেন। ( wget -qO- google.comকাজ) ifconfigআইপি 172.17.0.2 দেখায়। আমার ল্যাপটপ যা আমার সার্ভার হিসাবে একই নেটওয়ার্কের সাথে সংযুক্ত করা হয়। এটি আমার সার্ভারকে পিং করতে পারে এবং আমার সার্ভার আমার ল্যাপটপটি পিং করতে পারে এবং আমার ডকার কন্টেইনার আমার ল্যাপটপটি পিং করতে পারে তবে আমার ল্যাপটপ আমার ডকার কনটেইনারটি পিং করতে পারে না। (আমার সার্ভারটি আমার ধারককেও পিং করতে পারে।) ওয়াইয়ারহার্ক ব্যবহার করে আমি খুঁজে পাই যে ডকার কনটেইনার পিং আমার সার্ভারের আইপি থেকে আসছে।

আমি সেবার অ্যাডাপ্টার ব্যবহার করে সংযোগ করে যখন ডকার কনটেইনার ইন্টারনেটের সাথে mascquerade ব্যবহার করে পড়ুন। (কোথায় জানি না) আমি masquerade সম্পর্কে পড়তে :

"একটি ছোট গুপ্তঘাতক এবং এটি যে প্রায়শই মুশকিলের ফাংশনটি প্রায়শই এক দিক থেকে কাজ করে, যা মুখোশধারী হোস্টগুলি কল করতে পারে তবে তারা দূরবর্তী হোস্টগুলি থেকে নেটওয়ার্ক সংযোগ গ্রহণ বা গ্রহণ করতে পারে না।"

এই বাক্যের মধ্যে প্রায় একটি আছে তাই আমি নিশ্চিত না যে এটি ডকারের জন্য সত্য।

তাই আমার প্রশ্নটি কি আমি আমার ল্যাপটপ থেকে আমার ডকার কন্টেইনারে (আমার বর্তমান কনফিগারেশনে) কোনও সংযোগ শুরু করতে পারি? কেন কেন না?

কি করার প্রয়োজন হবে? (আমি প্রকাশক সম্পর্কে জানি)

উত্তর:


-1

আপনি আপনার কনটেইনারটিকে একটি SSH সার্ভার হিসাবে এবং তারপর আপনার ল্যাপটপ থেকে আপনার কন্টেইনারে ssh করতে পারেন।

আরো বিস্তারিত জানার জন্য কীভাবে এটি করুন, একটি SSH পরিষেবা ডকারেরাইজ করুন

হালনাগাদ

ডকার কন্টেইনারের জন্য, যতদূর আমি জানি, এটিতে ইন্টারনেটে সংযোগ করার দুটি উপায় রয়েছে।

এক হোস্ট পোর্ট উন্মুক্ত করা হয়। আরেকটি ইনগ্রেশন নিয়ামক মাধ্যমে হয়।

যদি না থাকে তবে কন্টেইনার হোস্ট ব্যতীত সবাই ইন্টারনেট থেকে কন্টেইনারে সংযোগ করতে পারবে না।


এটি আকর্ষণীয় যে আমি সেই বৈশিষ্ট্যটি সম্পর্কে জানতাম না কিন্তু আমার প্রধান প্রশ্নটি যদি আমার ল্যাপটপটি এখন ডকার কনটেইনারের সাথে সংযোগ হিসাবে শুরু করে তবে তারা যদি আমার সাথে যোগাযোগ করে তবে আমার ল্যাপটপ কেবল তাদের সাথে কথা বলতে পারে। দুঃখিত যে পরিষ্কার ছিল না। (অথবা না হয়)
র্যালডোন 01

কনটেইনারের মুকর্কেড সম্পর্কে দস্তাবেজ থেকে আপনার মত কিছু আছে। কনটেইনারটি পোর্ট ম্যাপিংয়ের মাধ্যমে সার্ভার আইপি থেকে ইন্টারনেট অ্যাক্সেস করতে পারে। শুধু ন্যাট মত। কন্টেইনারের ঠিকানা সার্ভারের মতো একই পরিসরে নেই। আপনি যদি শুধুমাত্র আপনার ধারক আইপি ঠিকানা পিং, আপনি এটা করতে পারেন না।
চার্লস Xu

তাই আমার পাত্রে নিরাপদ?
র্যালডোন 01

@ শার্কি হ্যাঁ, যদি আপনি সার্ভারে কন্টেইনার পোর্ট প্রকাশ না করেন তবে সার্ভার ব্যতীত কেউ এটি অ্যাক্সেস করতে পারবেন না।
চার্লস Xu

যে আমার প্রশ্ন ধন্যবাদ। (সম্ভবত আপনি আপনার উত্তরগুলিতে এই মন্তব্য যোগ করতে পারেন)
র্যালডোন 01

0

ডিফল্টরূপে, ডকার কনটেইনারগুলি হোস্টের ভিতরে চলমান একটি সেতু নেটওয়ার্ককে সংযুক্ত করে (আপনার স্থানীয় নেটওয়ার্কটি WAN / ইন্টারনেটের মতো মনে করে এবং নেটওয়ার্ক ডকার একটি ল্যানের মত এবং রাউটারের মতো ডকার হোস্ট তৈরি করে)

আপনি পোর্টগুলি প্রকাশ করতে পারেন docker run -pযা হোস্ট আইপি ঠিকানা থেকে কনটেইনার আইপি ঠিকানায় একটি NAT নিয়ম তৈরি করে (যেমন আপনি ইন্টারনেট থেকে আপনার ব্যক্তিগত নেটওয়ার্কে একটি ডিভাইস পেতে আপনার রাউটারে পোর্ট ফরওয়ার্ডিং সেটআপ করেন)

আপনি হোস্টে রাউটিং সেটআপ করতে পারেন যাতে ডকার ব্রিজ নেটওয়ার্ক সরাসরি অ্যাক্সেসযোগ্য হয়। এটি করার জন্য, আপনাকে হোস্টের আইপি ফরওয়ার্ডিং সক্ষম করা নিশ্চিত করতে হবে, আপনাকে অবশ্যই নিশ্চিত করতে হবে যে ডকার হোস্ট ফায়ারওয়াল ইনকামিং সংযোগগুলিকে কনটেইনারের আইপি ঠিকানাতে অনুমতি দেবে এবং আপনার নেটওয়ার্কে রাউটিং কনফিগার করতে হবে গেটওয়ে) ডকার ব্রিজ নেটওয়ার্ক আইপি ঠিকানা হোস্ট এর আইপি ঠিকানা রুট

সেই বিকল্পগুলির পাশাপাশি আপনি ডকার নেটওয়ার্কিংয়ের অন্য উপায়গুলি দেখতে পারেন যদি অফিসিয়াল ডকুমেন্টেশন https://docs.docker.com/network/#scope-of-this -topic

এই পদ্ধতির পাশাপাশি, আপনি হোস্টে এসএসএইচ এবং কন্টেইনারে একটি এসএসএইচ সুড়ঙ্গ তৈরি করতে পারেন। উদাহরণস্বরূপ, যদি ডকার হোস্ট 10.0.0.2 হয় এবং কন্টেইনারের 172.17.0.1 এর আইপি ঠিকানা থাকে এবং আপনি 8080 পোর্টে nginx অ্যাক্সেস করতে চান তবে আপনি এটি করতে পারেন ssh -L 8080:172.17.0.1:8080 10.0.0.2যা SSH সংযোগ আরম্ভ করার মেশিনে পোর্ট 8080 পুনঃনির্দেশিত করবে ধারক 8080 যাও

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