आधार के साथ ubuntu:12.04
, ifconfig
कंटेनर में उपलब्ध नहीं है, हालांकि ip
कमांड उपलब्ध है, यह क्यों है? और, कैसे प्राप्त करें ifconfig
कंटेनर में?
आप इफकॉन्फिग के साथ स्थापित कर सकते हैं apt-get install net-tools
. (विशेष रूप से, जोड़कर RUN apt-get install -y net-tools
करने के लिए अपने Dockerfile.)
मेरे परीक्षण के आधार पर, इफकॉन्फिग उबंटू में शामिल है:14.04 ।
जब तक आप नेट-टूल्स स्थापित नहीं कर सकते, तब तक इसे डिफ़ॉल्ट रूप से देने की कोई आवश्यकता नहीं है । इसके अलावा अगर आप आईपी एड्रेस देखना चाहते हैं तो डॉकर द्वारा ही एक और कमांड उपलब्ध है:-
docker inspect <container_name or container_id>
डॉकर निरीक्षण सिंटेक्स: docker inspect [OPTIONS] NAME|ID [NAME|ID...]
यह सीएमडी आपको आईपी पते सहित चलने वाले कंटेनर का हर विवरण दिखाएगा ।
मैं भी इस उपद्रव पर ठोकर खाई, लेकिन जैसा कि देवेंद्र ने लिखा है डॉकर निरीक्षण आप बिना कंटेनर के बारे में सभी विवरण प्राप्त कर सकते हैं net-tools
। मेरे मामले में मुझे कंटेनर की आवश्यकता थी IP.To उस आईपी को निकालें जिसका आप उपयोग कर सकते हैं:
docker inspect <container-id> \ | grep "\"IPAddress\"" -m 1 \ | grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}'
संपादित करें कंटेनर के आईपी प्राप्त करने के लिए भी कम नोटेशन (देखें डॉकर उदाहरणों का निरीक्षण करते हैं):
docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' <container-id-or-name>
आप इसका उपयोग करके इसे स्थापित कर सकते हैं
apt-get install net-tools
या यदि आप रेडहॉट लिनक्स का उपयोग कर रहे हैं तो इसे यम पैकेज मैनेजर का उपयोग करके स्थापित करें
yum install net-tools
देखें [लिनक्स नेटवर्किंग - इफकॉन्फिग/रूट/आदि के बजाय “आईपी एक्स”?] (Linux Networking - "ip X" instead of ifconfig/route/etc? - Server Fault) और क्या मुझे इफकॉन्फिग का उपयोग करना छोड़ देना चाहिए?
क्या डेवलपर्स अभी भी जीवित हैं? यह वर्षों पहले पदावनत किया गया था ।
“कुछ कार्यक्रम” और “बग है”: क्या आप अधिक विशिष्ट हो सकते हैं?
मुझे पता है कि इफकॉन्फिग
किसी तरह पदावनत है, लेकिन कुछ कार्यक्रम अभी भी इस पर निर्भर हैं ।