एक बदलाव के लिए, आज हमारे पास डॉकर कंटेनर ऑटोमेशन फ्रेमवर्क पर एक अपेक्षाकृत छोटा और सरल लेख होगा। हम सीखेंगे कि कंटेनरों के अंदर डेटा को कैसे माउंट किया जाए, डेटा को कैसे साझा किया जाए, और हमारे उदाहरणों को उपयोगी सिस्टम में बनाने के लिए सभी आवश्यक बिट्स और टुकड़े। पी>
अब तक, आपने आनंद लिया - और यह एक उदार शब्द है - एक बहुत विस्तृत परिचय मार्गदर्शिका, फिर हमने सेवाओं, नेटवर्किंग में दबोच लिया, और कुछ कठिन त्रुटियों को हल किया। यह ट्यूटोरियल परंपरा को कदम दर कदम जारी रखता है, इसलिए यह सरल और क्रिस्टल स्पष्ट होना चाहिए। हमें शुरू करने दें। पी>
पी>
मूल बातें
एक कंटेनर के अंदर होस्ट डेटा को उजागर करने की प्रक्रिया अपेक्षाकृत सरल है, और यह माउंट कमांड के समान है। आप एक स्रोत निर्देशिका या फ़ाइल प्रदान करते हैं, और इसे लक्ष्य निर्देशिका या फ़ाइल पर इंगित करते हैं। बंदरगाहों की तरह, जिसमें मेजबान और कंटेनर के टुकड़े होते हैं। पी>
डॉकर रन -it -v /root/testing:/dedoimedo centos:latest /bin/bash
हम बैश शेल के साथ एक नया कंटेनर चला रहे हैं, और हम कंटेनर के अंदर /dedoimedo के तहत होस्ट की /रूट/परीक्षण निर्देशिका को माउंट करने जा रहे हैं। मेजबान पर, स्रोत कुछ भी हो सकता है, जिसमें एनएफएस माउंट भी शामिल है, जो प्रभावी रूप से इसे एक सुंदर दूरस्थ डेटा साझा करने वाली चीज़ में बदल देता है। व्यवहार में, NFS पुन:निर्यात को रोकता है, लेकिन यह वास्तव में धोखा है, क्योंकि आप अभी भी वही काम उसी होस्ट पर कर रहे हैं, एक तरह से। पी>
पी>
कंटेनर के अंदर, अब आप /dedoimedo निर्देशिका की सामग्री की जांच कर सकते हैं और देख सकते हैं कि अंदर क्या संग्रहीत है। हालाँकि, एक मानक, डिफ़ॉल्ट CentOS बिल्ड पर, जो कि यहाँ हमारा परीक्षण मामला है, आप शायद एक त्रुटि करेंगे। और यह प्रासंगिक है, क्योंकि आप एक समान समस्या का सामना कर सकते हैं, और डीबग करने के लिए तैयार और इच्छुक होना चाहिए, साथ ही, यह दर्शाता है कि सुरक्षा विशेषताएं कभी-कभी हानिकारक हो सकती हैं। पी>
रास
ls:निर्देशिका नहीं खोल सकता।:अनुमति अस्वीकृत
सुरक्षा विशेषताएं। हाँ, बेशक, सेलिनक्स। सौभाग्य से, समस्या को ठीक किया जा सकता है। आप मॉड्यूल के लिए प्रवर्तन नीति को बदल सकते हैं, या आप एक नया नियम जोड़ सकते हैं जो कंटेनरों को माउंटेड वॉल्यूम तक पहुंचने की अनुमति देगा। पी>
सेटनफोर्स 0
और नियम, अगर आप उस तरह जाना चाहते हैं:
chcon -Rt svirt_sandbox_file_t /<वॉल्यूम>
फिर आप सामग्री देखेंगे, और आप खेलना शुरू कर सकते हैं, फ़ाइलें लिखना आदि। वास्तव में, यदि हम पहले होस्ट को देखते हैं, तो माउंटेड डायरेक्टरी के अंदर एक नई फ़ाइल बनाते हैं, हम वास्तविक सामग्री को छोड़कर नीचे जैसा कुछ देखेंगे कोर्स:
पी>
पी>
कंटेनरों के बीच साझा करना
बहुत कुछ जैसा हमने नेटवर्किंग के साथ किया, आप एक कंटेनर के अंदर डेटा को दूसरों के सामने उजागर करना चाह सकते हैं, इसलिए वे डेटा वॉल्यूम कंटेनर बन जाते हैं। यदि आप अपने कंटेनर कार्यक्षमता को समूहीकृत करते हैं तो यह बहुत उपयोगी हो सकता है, साथ ही आप काफी मात्रा में स्थान बचा सकते हैं। इसके अलावा, आप कंटेनरों के बीच वॉल्यूम को भी चेन कर सकते हैं, जो आपको यह कम करने की अनुमति देता है कि कितने अलग-अलग कंटेनरों को एक साथ होस्ट डेटा तक पहुंच प्राप्त है। यह उपयोगी हो सकता है यदि आपके पास होस्ट पर एक मजबूत राइट लॉकिंग मैकेनिज्म नहीं है, जो यूनिक्स जैसी प्रणालियों के लिए लगभग हमेशा सही है। पी>
आइए एक त्वरित उदाहरण करते हैं। हम डेटा-स्रोत के नाम से एक कंटेनर शुरू करेंगे। यह /डेटा आरोह बिंदु से शुरू होगा। वैकल्पिक रूप से, हम यह सुनिश्चित कर सकते हैं कि /data होस्ट पर एक निर्देशिका में मैप किया गया है, लेकिन अभी के लिए यह ठीक है। फिर, हम एक दूसरा कंटेनर बनाएंगे, जो कंटेनर नाम के डेटा-स्रोत से वॉल्यूम का उपयोग करेगा। पी>
डॉकर रन -टी - नाम डेटा-स्रोत -वी / डेटा सेंटोस:नवीनतम / बिन / बैश
डॉकर रन -टी - वॉल्यूम-डेटा-स्रोत सेंटोस से:नवीनतम / बिन / बैश
अब, यदि हम अपने दो कंटेनरों को देखते हैं, तो दोनों में /डेटा निर्देशिका होगी, डेटा-स्रोत को छोड़कर सभी कंटेनरों के लिए डेटा के लिए तथाकथित प्रवेश बिंदु होगा जो कि -वॉल्यूम-से विकल्प के साथ चलाया गया है। आप बहुत अधिक डेटा स्थान बचा सकते हैं, नियंत्रित कर सकते हैं कि आपके कंटेनर मूल डेटा का उपयोग कैसे करते हैं और उस तक कैसे पहुंचते हैं, और आप अधिक आसानी से कई सॉफ़्टवेयर कॉन्फ़िगरेशन का परीक्षण कर सकते हैं। बहुत साफ, कुल मिलाकर। पी>
[जड़ @ 68d3ed5e243a डेटा] # पीडब्ल्यूडी
/जानकारी
[रूट@68d3ed5e243a डेटा]# स्पर्श सामग्री
[रूट@68d3ed5e243a डेटा]#
और दूसरा कंटेनर:
[रूट@7एईडी935सीसी156 /]# एलएस -ला /डेटा
कुल 4
drwxr-xr-x। 2 रूट रूट 18 मई 1 11:46 .
drwxr-xr-x। 18 रूट रूट 4096 मई 1 11:45 ..
-आरडब्ल्यू-आर--आर--। 1 रूट रूट 0 मई 1 11:46 सामग्री
[रूट@7एईडी935सीसी156 /]#
पी>
आगे क्या है?
मानो या न मानो, हम इस बिंदु पर रुकेंगे। कुछ अन्य चरण हैं जो हम कर सकते हैं, जैसे बैकअप, डेटा हटाना और ऐसे ही, लेकिन वह एक अलग विषय है। फ़िलहाल, हमारे पास डेटा वॉल्यूम के साथ काम करना शुरू करने के लिए पर्याप्त है और उन्हें माउंट पॉइंट के रूप में कंटेनर के अंदर एक्सपोज़ करें। किसी भी तरह, अंगूठे के नियम के रूप में, आप पर्यावरण उपकरण और कॉन्फ़िगरेशन के लिए केवल पढ़ने के लिए डेटा, बड़े डेटा के लिए वॉल्यूम कंटेनर, परीक्षण के लिए छोटी, सरल निर्देशिकाओं और आरोह बिंदुओं का उपयोग करना चाह सकते हैं, और इसी तरह। पी>
निष्कर्ष
डॉकर वॉल्यूम हैंडलिंग अपेक्षाकृत सरल है, और मेरा मानना है कि कंटेनर तकनीक के इस पहलू को अभी भी बढ़ने की जरूरत है, इससे पहले कि यह रूपरेखा के अन्य टुकड़ों की तरह परिपक्वता स्तर तक पहुंच सके। यह बहुत समृद्ध नहीं है, और डेटा को नियंत्रित करने के अतिरिक्त तरीके होने चाहिए, जिसमें स्नैपशॉट, डेटा वितरण और समानांतरकरण के लिए अंतर्निहित समर्थन, और बहुत कुछ शामिल हैं। पी>
ठीक है, कम से कम, आपने इस ट्यूटोरियल में कुछ नई चीजें सीखी हैं, जिसमें माउंट पॉइंट कैसे बनाएं और डेटा वॉल्यूम कैसे माउंट करें, उन्हें कैसे चेन करें, साथ ही रास्ते में कुछ छोटी-छोटी समस्याओं को ठीक करें। शायद यह गाइड बाकी की तुलना में थोड़ा नग्न महसूस करता है, लेकिन हमें हमेशा भारी, कभी न खत्म होने वाले लेखों की आवश्यकता नहीं होती है। कभी-कभी, इसे छोटा और मीठा रखना ठीक होता है। दरअसल, उस धमाके पर, अंत। पी>
प्रोत्साहित करना। पी>