2015-02-19 7 views
7

में एक फोल्डर कॉपी के रूप मेंजोड़ना है या अपनी निर्देशिका संरचना डोकर

Dockerfile downloads 

मैं करने के लिए/tmp

ADD downloads /tmp/ 
COPY down* /tmp 
ADD ./downloads /tmp 

Nothings काम करता है डाउनलोड जोड़ना चाहते हैं इस प्रकार है। यह tmp में डाउनलोड की सामग्री की प्रतिलिपि बनाता है। मैं डाउनलोड फ्लोडर की प्रतिलिपि बनाना चाहता हूं। कोई उपाय?

ADD . tmp/ 

कॉपी डॉकरफाइल भी। मैं न tmp में Dockerfile प्रतिलिपि बनाना चाहते हैं/

उत्तर

0

आप फ़ोल्डर एक / यह एक फ़ाइल माना जाता है साथ समाप्त नहीं होता है, तो आप आप एक फ़ोल्डर की प्रतिलिपि बनाना चाहते हैं तो लिखने ADD /abc/ def/ की तरह कुछ चाहिए।

+1

नहीं यार, यह काम नहीं करता। 'डाउनलोड// mnt /' जोड़ें लेकिन यह डाउनलोड की सामग्री/mnt/में जोड़ता है। –

+0

आपके फ़ोल्डर्स स्रोत और गंतव्य दोनों को '/' के साथ समाप्त होना चाहिए, आपकी कोशिश करने की कोशिश करने से आपकी डॉकरफ़ाइल भी यह सही है। – user2915097

+0

डॉकरफ़ाइल छोड़ दें। मैंने अभी टिप्पणी की है कि मैंने कोशिश की है। यह –

16

मुझे विश्वास है कि आप की जरूरत:

COPY downloads /tmp/downloads/ 

यह एक निर्देशिका में डाउनलोड निर्देशिका की सामग्री की प्रतिलिपि बनाएगा छवि में /tmp/downloads/ कहा जाता है।

+1

पर है क्या आप कृपया अपने समाधान को आपके द्वारा प्रदान किए गए समाधान के बारे में थोड़ा और विवरण जोड़कर विस्तारित कर सकते हैं? – abarisone

+0

यह सही उत्तर है। धन्यवाद। यह मेरे लिए स्पष्ट नहीं था। – rotarydial

0

पहले टार निर्देशिका आप चाहते हैं एक एकल संग्रह फ़ाइल के रूप में जोड़ने के लिए:

tar -zcf download.tar.gz download 

फिर Dockerfile में संग्रह फ़ाइल जोड़ें:

ADD download.tar.gz tmp/ 
-1

आप उपयोग कर सकते हैं:

RUN mkdir /path/to/your/new/folder/ 
COPY /host/folder/* /path/to/your/new/folder/ 

हालांकि मुझे इसे केवल एक COPY कॉल के साथ सीधे करने का कोई तरीका नहीं मिला।

0

नोट: निर्देशिका ही है, कॉपी नहीं है सिर्फ इसकी सामग्री

COPY और ADD के बारे में dockerfile संदर्भ से, यह Note: The directory itself is not copied, just its contents. कहते हैं, तो आप स्पष्ट रूप से एक गंतव्य निर्देशिका निर्दिष्ट करना होगा।

उत्तर: https://docs.docker.com/engine/reference/builder/#copy

उदा

src निर्देशिका की सामग्री को /some_dir/dest_dir निर्देशिका पर कॉपी करें।

COPY ./src /some_dir/dest_dir/

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