ডকার আমার /etc/resolv.conf ফাইলটি কনটেইনারগুলির মধ্যে ওভাররাইড করে


17

আমি আমার resin/rpi-raspbian:jessieধারকটি এতে সেট করতে চাই /etc/resolv.conf:

nameserver 208.67.222.222
nameserver 208.67.220.220

আমার ডকফাইফিলের নিম্নলিখিত লাইন রয়েছে:

ADD resolv.conf /etc/resolv.conf

এই যুক্ত করা ফাইলটিতে সঠিক নেমসার্ভার রয়েছে।

আমার ডকার হোস্টের /etc/resolv.confসঠিক তথ্য রয়েছে।

আমি ধারকটি এভাবে চালাচ্ছি:

docker run -itd --cap-add=NET_ADMIN --device /dev/net/tun \
-v /home/pi/share/ovpn:/ovpn \
--privileged --network=internet_disabled --name vpn-client \
--dns=208.67.222.222 \
openvpn-client_nat-gateway /bin/bash

এত কিছুর পরেও ধারক এই আউটপুট দেয়:

root@642b0f4716ba:/# cat /etc/resolv.conf
nameserver 127.0.0.11
options ndots:0

আমি কেবল পাত্রে (অথবা ডকার এক্সিকিউট সহ) ম্যানুয়ালি রেজোলভ.কনফটি পরিবর্তন করার পরে এটি সঠিক দেখাচ্ছে।

আমি বরং এটি একটি নির্বাহী কমান্ড দিয়ে ঠিক করা এড়াতে চাই। কারও ধারণা আছে এখানে কী চলছে?


তাদের উইকিতে বর্ণিত কয়েকটি মামলা রয়েছে যা আপনার পরিস্থিতি ব্যাখ্যা করতে পারে।
জুলি পেলেটিয়ার

কটাক্ষপাত আমার প্রশ্ন ও উত্তর।
জিনব আব্বাসিমাজার

উত্তর:


14

আফাইক, ডক শুরু করার সাথে সাথে কোনও চিত্রের কিছু ফাইল ওভাররাইড করে , এমনকি সেগুলি ডকফাইফিলে যুক্ত করা হয়। এটি অবশ্যই অন্তর্ভুক্ত /etc/hosts, এবং সম্ভবত খুব একই ক্ষেত্রে ঘটে /etc/resolv.conf। স্পষ্টতই এটি ডকারের ডিফল্ট "অভ্যন্তরীণ" নেটওয়ার্কটি সঠিকভাবে তৈরি করতে ব্যবহৃত হয় (যাতে চিত্রগুলি একে অপরকে দেখতে পারে তবে হোস্ট নয় ইত্যাদি)) আপনি যদি সত্যিই নিশ্চিত হন যে আপনি সেই কয়েকটি ফাইলকে ওভাররাইড / সংশোধন করতে চান তবে আমার বিশ্বাস আপনাকে অবশ্যই আবশ্যক রানটাইম ক্রিয়াগুলির অংশ হিসাবে এটি করুন, এটি CMDলাইনের অংশ হিসাবে । উদাহরণ স্বরূপ:

...
ADD resolv.conf /etc/resolv.conf.override
CMD cp /etc/resolv.conf.override /etc/resolv.conf && \
        your_old_commands...

3
এটা সঠিক। /etc/resolv.confকোনও ধারক শুরু হওয়ার পরে হোস্ট থেকে অনুলিপি করা হয়।
উইসবাকি

4

আমি দেখতে পাচ্ছি আপনি user-defined networksএবং ডকার ইঞ্জিন সংস্করণ> = 1.10 ব্যবহার করছেন। সুতরাং অফিসিয়াল ডকার ইঞ্জিন সংক্রান্ত নথি থেকে Embedded DNS server in user-defined networks:

এই --dns আইপি ঠিকানাগুলি এম্বেড করা ডিএনএস সার্ভার দ্বারা পরিচালিত হয় এবং ধারকটির /etc/resolv.conf ফাইলে আপডেট হবে না।

আপনার ডিএনএসে কাজ করতে হবে তবে আপনি কোনও কনফিগারেশন ফাইলে দেখতে পাবেন না।

তথ্যসূত্র


0

এটি যদি আজুরে কন্টেইনারগুলির জন্য ওয়েব অ্যাপ হয় তবে আমি সমস্যাটি সমাধান করেছি।

আছে 2 পাত্রে সঙ্গী । কুডু এবং হোস্ট

ধাপ

1. আপনার ডকার ফাইল থেকে ssh ইনস্টল করুন (এছাড়াও একটি এসএসডি কনফিগারেশন অন্তর্ভুক্ত)

একটি ধারক স্টার্ট.শ তৈরি করুন (যা রেজোলভকনফ আপডেট করে)

3. ভিতরে প্রবেশ পয়েন্ট সেট করুন

এখন হোস্ট resolv.conf আপডেট হয়ে যায় এবং আপনি আপনার পছন্দসই কোনও ডিএনএস ব্যবহার করতে পারেন

PS: আপনি যদি নেটওয়ার্কে কাস্টম ডিএনএস না নিতে পারেন তবে চিন্তা করবেন না। আমরাও পারিনি। আপনি যদি এএসই পরিবেশ ব্যবহার করছেন তবে পুনরায় সেটআপ করা দরকার

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