2013-12-16 3 views
24

मैंने this और intro docs on Docker.io पढ़ा है और मुझे यह अवधारणा पसंद है। लेकिन, क्या आप इसे थोड़ा बेहतर समझने में मेरी मदद कर सकते हैं? क्या आप मुझे कुछ व्यावहारिक उदाहरण और/या केस स्टडीज दे सकते हैं कि डॉकर का उपयोग कैसे किया जाता है और जब वास्तव में इसका उपयोग करने के लिए यह समझ में आता है?क्या आप डॉकर को व्यावहारिक उदाहरण/मामले के साथ समझा सकते हैं?

बस एक साइड नोट, मैंने हाल ही में हमारी विकास टीम को एक पूर्वसंरचित DEV बॉक्स वितरित करने के लिए वग्रेंट का उपयोग करना शुरू कर दिया है (इसलिए हम सभी एक ही बेस सिस्टम का उपयोग करते हैं)। मैंने ऐसे उदाहरण भी देखे हैं जहां डॉकर का उपयोग वग्रेंट के अंदर किया जाता है और क्या नहीं, लेकिन मुझे व्यावहारिक अर्थ में ऐसा करने के लाभ नहीं हैं; जिसका अर्थ है कि मैं वीएम और कंटेनरों और बाद में लॉजिकल अलगाव के बीच का अंतर समझता हूं, लेकिन मुझे दूसरे के बजाय एक का उपयोग कब करना चाहिए और जब वग्रेंट के अंदर डॉकर कब उपयोग किया जाए? (यह एक और विशिष्ट सवाल है, लेकिन मुझे ऊपर की पहली प्रश्न में उल्लिखित बड़ी तस्वीर में दिलचस्पी है)।

+1

आवारा doco एक वर्ग डोकर एक प्रावधानकर्ता के रूप में प्रयोग किया है: http://docs.vagrantup.com/v2/provisioning/docker.html –

+0

है यहां दिया गया बड़ा सवाल "बहुत व्यापक" की परिभाषा नहीं है? इस फ़ॉर्म के प्रश्न के लिए एक एकल कैनोलिक उत्तर संभव नहीं है, और इस तरह के उत्तर के लिए प्रश्नों को यहां अनुमति देने की अनुमति देने की आवश्यकता है। –

उत्तर

2

वहाँ एक अच्छा डोकर हैक दिन उपयोग मामला है:

Git और जेनकींस के साथ एक जावा ढेर के स्वत: तैनाती। आप अपने कोड को अपने contenairezied गिट भंडार में धक्का देते हैं। यह जेनकींस बिल्ड को ट्रिगर करेगा ताकि आपका वेबपैप कंटेनर डॉकर में पैक किया जाएगा और डॉकर द्वारा चलाया जाएगा।

https://www.youtube.com/watch?v=Q1l-WoJ7I7M

21

मैं अनुसंधान समुदाय के लिए और अधिक उपलब्ध विज्ञान विश्लेषण करने के लिए सॉफ्टवेयर बनाने के प्रयास में भाग लेते हैं। अक्सर, प्रश्न में सॉफ़्टवेयर एक व्यक्ति या कुछ लोगों द्वारा पुन: उपयोग के लिए पर्याप्त योजना के बिना लिखा जाता है, जैसे कि एक व्यक्ति अपने कंप्यूटर पर एक पायथन स्क्रिप्ट या मैटलैब मॉड्यूल लिखता है। यदि सॉफ्टवेयर अच्छी तरह से काम करता है, तो अक्सर दूसरों को खुद को आजमा देना चाहेंगे ... लेकिन कुछ मामलों में यह एक चुनौतीपूर्ण चुनौती हो सकती है जो अनियंत्रित या पुन: कार्यान्वित करने में मुश्किल हो।

डॉकर दूसरों को इस तरह के सॉफ़्टवेयर का पुन: उपयोग करने में मदद करने के लिए एक शानदार टूल है, क्योंकि यह एक एंटरप्राइज़ में सॉफ़्टवेयर इंस्टॉल करने के लिए एक वाग्रेंट स्क्रिप्ट लिखने वाले प्रवेश की एक कम बाधा है। अगर मैं एक व्यक्ति को डॉकर कंटेनर देता हूं, तो वह जो भी चाहती है वह कर सकती है (कोड लिखना, लाइब्रेरी इंस्टॉल करना, पर्यावरण स्थापित करना आदि। जब यह "किया जाता है", तो वह इसकी एक छवि सहेज सकती है और छवि को एक में प्रकाशित कर सकती है डॉकर रिपोजिटरी और एक अन्य शोधकर्ता को बताएं, "यहां यह है, बस इसे शुरू करें और इसे चलाएं ..."

हम कंटेनरों को उत्पादन सॉफ्टवेयर वितरित करने और संग्रहीत करने के लिए अपनी स्वयं की कॉन्फ़िगरेशन प्रबंधन रणनीति के रूप में उपयोग करने पर भी विचार कर रहे हैं ... कम से कम सर्वर-साइड घटक

हमने कई डॉकर कंटेनर के डेटा प्रोसेसिंग वर्कफ़्लो चलाने के लिए पायथन और खोल में स्क्रिप्ट लिखने के साथ कुछ काम भी किया है। हमने जो डेमो बनाया है, वह लोगों के चेहरे निकालने के लिए एक छवि पर ओपनसीवी चलाने के लिए था , फिर चेहरे को फसल करने के लिए ImageMagick, और अंत में ImageM सभी चेहरों का कोलाज बनाने के लिए फिर से आग लगाना। हमने OpenCV और ImageMagick के लिए एक कंटेनर के लिए एक कंटेनर बनाया, फिर आवश्यक पैरामीटर वाले प्रत्येक कंटेनर पर "डॉकर रन ..." निष्पादित करने के लिए एक पायथन स्क्रिप्ट लिखी। पायथन स्क्रीप्टिंग को docker-py प्रोजेक्ट का उपयोग करके पूरा किया गया था जिसने हमें इसकी आवश्यकता के लिए अच्छी तरह से काम किया।

8

केस स्टडी के लिए "how and why Spotify uses Docker" पर एक नज़र डालें।

अपने पिछले सवाल का जवाब करने के लिए:

मैं भी जहां डोकर और whatnot Vagrant अंदर प्रयोग किया जाता है उदाहरण देखा है, लेकिन मैं लाभ एक व्यावहारिक अर्थ में यह करने के लिए क्या कर रहे हैं नहीं मिलता; जिसका अर्थ है कि मैं वीएम और कंटेनर और बाद में लॉजिकल अलगाव के बीच अंतर को समझता हूं, लेकिन जब मुझे दूसरे की बजाय एक का उपयोग करना चाहिए और जब डॉकर वग्रेंट के अंदर उपयोग करना चाहिए?

डोकर अक्सर Vagrant अंदर उपयोग किया जाता है, क्योंकि यह पर मैक OSX currenlty रन (Kernel Requirements देखें), है जो बहुत सामान्य डेवलपर्स द्वारा नहीं किया जाता है।

फिर अपनी देव टीम एक ही कंटेनर पर काम करने के लिए, लैपटॉप पर उत्पादों का निर्माण और परीक्षण करती है और बाद में "उत्पादन में, उत्पादन में, वीएम, नंगे धातु, ओपनस्टैक क्लस्टर, सार्वजनिक बादलों और अधिक पर चलती है" आपको Vagrant on their Mac OSX की आवश्यकता है।

कहा कि, यहाँ आप एक और भयानक मामले का अध्ययन देख सकते हैं http://bit.ly/19h8gUk

+1

अब [अतिरिक्त केस स्टडीज] (https://www.docker.com/resources/usecases/) वीडियो सहित डॉकर वेबसाइट पर उपलब्ध हैं। – Andrew

+0

उपर्युक्त संदर्भित आइटम अब https://www.docker.com/customers पर ले जाया गया है – meatspace

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