2014-06-30 19 views
5

में होस्ट DNS का उपयोग नहीं कर रहा है, मैं अपने मैक पर boot2docker चला रहा हूं। OSX संस्करण 10.9.3 boot2docker संस्करण 4.3.12 डोकर संस्करण 0.12.0डॉकर कंटेनर boot2docker

boot2docker छवि एक आवारा बॉक्स, virtualbox का उपयोग कर रहा है। मैंने कई वानर बक्से (उदाहरण के लिए stigkj/boot2docker) की कोशिश की है। वे सभी इस मुद्दे का प्रदर्शन करते हैं।

यदि मैं boot2docker छवि में ssh करता हूं और /etc/resolv.conf पर देखता हूं तो यह नेमसर्वर 10.0.2.3 का उपयोग कर रहा है।

मैं कमांड के साथ एक सरल डोकर छवि बूट:

docker run -i -t ubuntu /bin/sh 

कि कंटेनर में /etc/resolv.conf को देखते हुए, यह 8.8.8.8 और 8.8.4.4 नेमसर्वर के रूप में उपयोग कर रहा है।

boot2docker वी एम पर docker.log फ़ाइल में, वहाँ इस लाइन है:

2014/06/30 15:25:01 Local (127.0.0.1) DNS resolver found in resolv.conf and containers can't use it. Using default external servers : [8.8.8.8 8.8.4.4] 

मैं क्या समझ से, डोकर मेजबान के नेम सर्वर का उपयोग माना जाता है। केवल अगर होस्ट 127.0.0.1 का उपयोग कर रहा है क्योंकि यह नेमसर्वर को बैकअप के रूप में Google नेमसर्वर के लिए डिफ़ॉल्ट होना चाहिए।

होस्ट नाम सर्वर के रूप में 127.0.0.1 का उपयोग नहीं कर रहा है, लेकिन ऐसा लगता है कि डॉकर सोचता है कि यह है। नेमसर्वर का उचित पता लगाने के लिए मैं इसे कैसे प्राप्त कर सकता हूं इस पर कोई सुझाव?

+0

नायब सुझाव का पालन करें: FWIW मेरे लिए यह रिबूट मैक के बाद मैं डोकर स्थापित से तय हुई थी। –

उत्तर

8

मुझे एक फिक्स मिला। ऐसा प्रतीत होता है कि boot2docker छवि मेजबान से DNS खींचने से पहले डॉकर डिमन चलाती है। तो boot2docker सोचता है कि जब यह बूट होता है तो DNS 127.0.0.1 पर सेट होता है, तो मशीन इसे सही नेमसर्वर में बदल देती है।

फ़िक्स बूट होने के बाद डॉकर डिमन को पुनरारंभ करना ठीक है। आवारा में, मैं अपने Vagrantfile में उचित स्थान में नीचे आदेश जोड़कर ऐसा किया:

config.vm.provision :shell, inline: "/etc/init.d/docker restart" 

यह इस तरह दिखता है boot2docker में एक ज्ञात मुद्दा है कि एक आगामी संस्करण में ठीक हो जाएगा: https://github.com/boot2docker/boot2docker/issues/357

2

समस्या लिंक और अंदर चर्चा के लिए @oillio को क्रेडिट।

यह विंडोज 7 के माहौल में होता है और साथ ही boot2docker 1.0.1 का उपयोग कर, मैं में https://github.com/boot2docker/boot2docker/issues/357

$ sudo udhcpc # refresh the DHCP 
$ sudo /etc/init.d/docker restart # restart the service 
संबंधित मुद्दे