2016-02-19 8 views
7

मैं Windows में डोकर टूलबॉक्स का उपयोग कर रहा है और इस तरह एक डोकर-compose.yml फ़ाइल में एक खिड़कियों फ़ोल्डर माउंट करने के लिए कोशिश कर रहा है:डोकर लिखें माउंट विंडो फ़ोल्डर

nginx: 
    image: nginx:latest 
    container_name: test_server 
    ports: 
    - "80:80" 
    volumes: 
    - /sss:/c/data/www:ro 
    environment: 
    - VIRTUAL_HOST=test.local 

मेरे उद्देश्य माउंट सी है: \ डेटा \ www2 boot2docker VM छवि जो पहले से ही डॉकर टूलबॉक्स द्वारा बनाई गई है और फिर वहां से इसके अंदर nginx कंटेनर में बनाई गई है।

दुर्भाग्यवश यह काम नहीं कर रहा है, मुझे boot2docker छवि के अंदर एक फ़ोल्डर एसएसएस मिलता है लेकिन यह मेरे विंडोज डेटा को लक्षित किए बिना खाली है।

मैं क्या गलत कर रहा हूं? वहाँ आदेश खिड़कियों में डोकर उपयोग करने के लिए, जबकि आप विकसित कर रहे हैं

धन्यवाद एक बहुत (ताकि आप खिड़कियां, डोकर वी एम (boot2docker) और डोकर कंटेनरों के बीच कोड साझा करने के लिए की जरूरत है) में किसी भी बेहतर अभ्यास,

निक

है
+0

याद रखें कि boot2docker के साथ, वहाँ अमूर्त की दो परतों हैं: एक लिनक्स आभासी मशीन है, तो डोकर इंजन है कि में चल रहे वी एम। डॉकर कंपोज़ वीएम के बाहर की दुनिया के बारे में कुछ भी नहीं जानता है जहां डॉकर चल रहा है, और उदाहरण के लिए, वर्चुअलबॉक्स साझा फ़ोल्डरों को कॉन्फ़िगर नहीं कर सकता है। Boot2docker प्रलेखन में इसकी कुछ चर्चा है: https://github.com/boot2docker/boot2docker#folder-sharing –

उत्तर

9

मेरे उद्देश्य वी एम छवि boot2docker को

"Manually sharing directory as docker volume mounting point" से माउंट C:\data\www के लिए है:

(

  • संपादित करें/root बनाएं:

    VBoxManage sharedfolder add <machine name/id> --name <mount_name> --hostpath <host_dir> --automount 
    # in your case 
    /c/Program\ Files/Oracle/VirtualBox/VBoxManage.exe sharedfolder add default --name www --hostpath 'C:\data\ww' --automount 
    
  • जोड़ने एक automount to your boot2docker VM:

    • अपने VirtualBox के वी एम (यकीन है कि यह पहले बंद कर दिया है) को संशोधित: 91,363,210

      आप की जरूरत है) /mnt/sda1/var/lib/boot2docker/bootlocal.sh, (sda1 आपके लिए अलग हो सकता है)

    • जोड़े

      mkdir -p <local_dir> 
      mount -t vboxsf -o defaults,uid=`id -u docker`,gid=`id -g docker` <mount_name> <local_dir 
      

(आप add the umask as in here करना पड़ सकता है)

+0

तो डॉकर-compose.yml में वॉल्यूम्स के पास विंडोज़ के साथ कुछ लेना देना नहीं है, लेकिन यह लिनक्स वीएम से माउंट करने के लिए है केवल कंटेनर? –

+0

हां, वे boot2docker की लिनक्स दुनिया में केवल – VonC

+0

में काम करते हैं, मेरे पास एक गंभीर समस्या है, मेरा माउंटिंग फ़ोल्डर boot2docker VM मशीन पर ठीक दिख रहा है, लेकिन यदि मैं विधवाओं से फ़ाइल जोड़ता या संपादित करता हूं तो यह फ़ाइल VM मशीन पर वापस अपडेट नहीं हो रही है कोई भी विचार ? –

संबंधित मुद्दे