डॉकर-मशीन उपयोगकर्ताओं की निर्देशिका को स्वचालित करता है ... लेकिन कभी-कभी यह पर्याप्त नहीं होता है।
मैं डॉकटर 1.6 के बारे में नहीं जानता, लेकिन 1.8 में आप डॉकटर-मशीन में एक अतिरिक्त माउंट जोड़ सकते हैं
वर्चुअल मशीन माउंट प्वाइंट (भाग 1) जोड़ें
सीएलआई : (केवल काम करता है जब मशीन बंद हो जाती है)
VBoxManage sharedfolder add <machine name/id> --name <mount_name> --hostpath <host_dir> --automount
तो खिड़कियों में एक उदाहरण होगा
/c/Program\ Files/Oracle/VirtualBox/VBoxManage.exe sharedfolder add default --name e --hostpath 'e:\' --automount
जीयूआई : (मशीन को रोकने की आवश्यकता नहीं है)
- "Oracle VM VirtualBox प्रबंधक" शुरू करें
- राइट-क्लिक
<machine name>
(डिफ़ॉल्ट)
- समायोजन...
- सांझे फ़ोल्डर
- दाईं ओर फ़ोल्डर + चिह्न (शेयर जोड़ें)
- फ़ोल्डर पथ:
<host dir>
(ई :)
- फ़ोल्डर का नाम:
<mount name>
(ई)
- "ऑटो-माउंट" और "स्थायी बनाएं" पर जांच करें (केवल यदि आप चाहें तो पढ़ें ...) (ऑटो-माउंट वर्तमान में व्यर्थ की तरह है ...)
Boot2docker में बढ़ते (भाग 2)
मैन्युअल रूप से boot2docker में माउंट करें :
- लॉग इन करने के कई तरीके हैं, "ओरेकल वीएम वर्चुअलबॉक्स मैनेजर" में "शो" का उपयोग करें, या आईपी पते
docker-machine ip default
, आदि द्वारा docker में ssh / पोटीन ...
sudo mkdir -p <local_dir>
sudo mount -t vboxsf -o defaults,uid=`id -u docker`,gid=`id -g docker` <mount_name> <local_dir>
लेकिन यह केवल अच्छा है जब तक आप मशीन को पुनरारंभ नहीं करते हैं, और तब माउंट खो जाता है ...
Boot2docker में एक ऑटोमाउंट जोड़ना :
मशीन में लॉग इन करते समय
- संपादित करें / बनाएं (रूट के रूप में)
/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>
इन परिवर्तनों के साथ, आपके पास एक नया आरोह बिंदु होना चाहिए। यह उन कुछ फ़ाइलों में से एक है जो मुझे मिल सकती है जिसे बूट पर कहा जाता है और लगातार है। जब तक बेहतर समाधान नहीं हो जाता, तब तक यह काम करना चाहिए।
पुरानी विधि: कम अनुशंसित है , लेकिन एक विकल्प के रूप में छोड़ दिया गया है
एक के रूप में अंतिम उपाय , आप थोड़ा और अधिक कठिन विकल्प ले सकते हैं, और आप बस बूट छवि को संशोधित कर सकते हैं।
git -c core.autocrlf=false clone https://github.com/boot2docker/boot2docker.git
cd boot2docker
git -c core.autocrlf=false checkout v1.8.1
# अपने उपयुक्त संस्करण के लिए
- संपादित करें
rootfs/etc/rc.d/automount-shares
try_mount_share <local_dir> <mount_name>
अंत में फाई से ठीक पहले लाइन जोड़ें । उदाहरण के लिए
try_mount_share /e e
बस सुनिश्चित करें कि ओएस / बिन, आदि जैसे ओएस की जरूरत के लिए कुछ भी सेट न करें ...
docker build -t boot2docker .
# यह पहली बार एक घंटे के बारे में ले जाएगा :(
docker run --rm boot2docker > boot2docker.iso
- पुराने boot2docker.iso का बैकअप लें और अपने नए को उसकी जगह कॉपी करें, ~ / .docker / मशीन / / में
यह काम करता है, यह सिर्फ लंबा और जटिल है
docker संस्करण 1.8.1, docker- मशीन संस्करण 0.4.0