संपादित 2 महीने पहले द्वारा ExtremeHow संपादकीय टीम
डॉकरलिनक्समोंगोडीबीडेटाबेसकंटेनरीकरणविकासवर्चुअलाइजेशनपरिनियोजनसेटअपकॉन्फ़िगरेशन
अनुवाद अपडेट किया गया 2 महीने पहले
MongoDB एक लोकप्रिय NoSQL डेटाबेस है जो लचीला और स्केलेबल डेटा प्रबंधन की अनुमति देता है। दूसरी ओर, डॉकर एक प्लेटफॉर्म है जो सॉफ़्टवेयर को कंटेनरों में चलाने की अनुमति देता है, यह सुनिश्चित करता है कि अनुप्रयोग किसी भी प्लेटफॉर्म पर लगातार चल सकें। लिनक्स पर डॉकर का उपयोग करके MongoDB सेट अप करना MongoDB की लचीलापन को डॉकर की शक्तिशाली कंटेनरीकरण क्षमताओं के साथ जोड़ता है। यह गाइड आपको लिनक्स वातावरण में डॉकर पर MongoDB सेट अप करने की प्रक्रिया से परिचित कराएगा। हम हर कदम को विस्तार से कवर करेंगे ताकि यह सुनिश्चित हो सके कि आप इसे सफलतापूर्वक कार्यान्वित कर सकें।
MongoDB को डॉकर पर सेट अप करने से पहले, सुनिश्चित करें कि आपके पास निम्नलिखित हैं:
यदि आपके लिनक्स सिस्टम पर डॉकर इंस्टॉल नहीं है, तो इसे इंस्टॉल करने के लिए आप निम्नलिखित चरणों का पालन कर सकते हैं:
sudo apt update
sudo apt install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io
इन चरणों का पालन करने के बाद, डॉकर को आपके लिनक्स सिस्टम पर सफलतापूर्वक इंस्टॉल हो जाना चाहिए। आप निम्नलिखित का उपयोग करके इंस्टॉल किए गए संस्करण की जांच कर सकते हैं:
docker --version
अब जब डॉकर इंस्टॉल हो गया है, तो अगला चरण Docker Hub से MongoDB छवि खींचना है। Docker Hub एक क्लाउड-आधारित लाइब्रेरी है जहां उपयोगकर्ता विभिन्न सॉफ़्टवेयर के लिए इमेज पा सकते हैं। MongoDB इमेज को खींचने के लिए, निम्नलिखित कमांड का प्रयोग करें:
sudo docker pull mongo
यह आदेश Docker Hub से MongoDB का नवीनतम संस्करण डाउनलोड करेगा। आप "mongo" के बाद कॉलन (:) और संस्करण संख्या जोड़कर किसी विशेष संस्करण को निर्दिष्ट कर सकते हैं। उदाहरण के लिए, संस्करण 4.4 खींचने के लिए, आप इसका उपयोग करेंगे:
sudo docker pull mongo:4.4
MongoDB छवि डाउनलोड होने के बाद, आप इस छवि का उपयोग करके एक कंटेनर बना सकते हैं और चला सकते हैं। एक कंटेनर एक हल्का वर्चुअल मशीन की तरह होता है जो विभिन्न अनुप्रयोग चला सकता है। MongoDB कंटेनर चलाने के लिए निम्नलिखित कमांड को निष्पादित करें:
sudo docker run --name mongodb -d -p 27017:27017 mongo
ऑर्डर का विश्लेषण:
--name mongodb
: कंटेनर को "mongodb" नाम सौंपता है।-d
: कंटेनर को आइसोलेटेड मोड में चलाता है, अर्थात यह बैकग्राउंड में चलेगा।-p 27017:27017
: होस्ट मशीन के पोर्ट 27017 को कंटेनर के पोर्ट 27017 से मैप करता है, जो पोर्ट डिफॉल्ट है जिस पर MongoDB सुनता है।mongo
: उपयोग करने के लिए MongoDB छवि निर्दिष्ट करता है।एक बार MongoDB कंटेनर चल रहा हो, आपको यह सत्यापित करना होगा कि सब कुछ सही तरीके से सेट अप हो गया है। डॉकर कंटेनर की स्थिति की जांच निम्नलिखित का उपयोग करके करें:
sudo docker ps
यह चालू कंटेनरों की सूची प्रदर्शित करेगा, और आप उनमें MongoDB कंटेनर भी देखेंगे। यह कंटेनर आईडी, नाम, उपयोग की गई छवि, और मैप की गई पोर्ट जैसी जानकारी दिखाएगा।
आप इसे MongoDB शेल का उपयोग करके और अधिक सत्यापित कर सकते हैं। सबसे पहले, चल रहे MongoDB कंटेनर में लॉगिन करें:
sudo docker exec -it mongodb bash
कंटेनर शेल के अंदर, MongoDB शेल शुरू करने के लिए निम्नलिखित टाइप करें:
mongo
यह आपको MongoDB शेल प्रॉम्प्ट देगा, जो यह पुष्टि करेगा कि डॉकर कंटेनर के अंदर MongoDB चल रहा है।
डिफॉल्ट रूप से, किसी भी डेटा को डॉकर कंटेनर में संग्रहीत गैर-स्थायी होता है। इसका मतलब है कि अगर कंटेनर हटा दिया जाता है, तो इसके अंदर बनाया गया सारा डेटा खो जाएगा। डेटा को स्थायी बनाने के लिए, आपको होस्ट मशीन पर एक डायरेक्टरी को कंटेनर के अंदर एक डायरेक्टरी से मैप करना होगा।
ऐसा करने के लिए, MongoDB कंटेनर को रोकें:
sudo docker stop mongodb
फिर वॉल्यूम मैपिंग के साथ एक नया कंटेनर चलाएं:
sudo docker run --name mongodb -d -p 27017:27017 -v /my/own/datadir:/data/db mongo
नए फ़्लैग की व्याख्या:
-v /my/own/datadir:/data/db
: कंटेनर के अंदर /data/db
डायरेक्टरी को होस्ट मशीन पर /my/own/datadir
से मैप करता है।/my/own/datadir
को उस पथ से बदलें जहां आप अपनी होस्ट मशीन पर MongoDB डेटा सहेजना चाहते हैं। यह डायरेक्टरी MongoDB का सारा डेटा संग्रहीत करेगी, और यह कंटेनर को हटाने पर भी स्थिर रहेगा।
डिफॉल्ट सेटिंग्स के साथ MongoDB चलाना एक उत्पादन वातावरण के लिए सुरक्षित नहीं हो सकता है। सुरक्षा बढ़ाने के लिए कुछ मूल कदम हैं।
सबसे पहले, MongoDB शेल शुरू करें और एक एडमिन यूजर बनाएं:
mongo
फिर admin
डेटाबेस पर जाएं:
use admin
एक प्रशासनिक उपयोगकर्ता बनाने के लिए निम्नलिखित आदेश को निष्पादित करें। "username" और "password" को अपनी पसंद के उपयोगकर्ता नाम और पासवर्ड से बदलने का सुनिश्चित करें:
db.createUser({ user: "username", pwd: "password", roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] })
प्रमाणीकरण चालू करने के लिए, आपको कॉन्फ़िगरेशन फ़ाइल को संपादित करने की आवश्यकता है। शेल से बाहर निकलें और चल रहे कंटेनर को रोकें:
exit
sudo docker stop mongodb
"auth" सक्षम के साथ एक नया MongoDB कंटेनर शुरू करें:
sudo docker run --name mongodb -d -p 27017:27017 -v /my/own/datadir:/data/db mongo --auth
अब, जब भी आप डेटाबेस से कनेक्ट होंगे, तो आपको प्रमाणीकरण की जरूरत होगी।
अधिक उन्नत कॉन्फ़िगरेशन के लिए, आप MongoDB कंटेनर शुरू करते समय एक कॉन्फ़िगरेशन फ़ाइल प्रदान कर सकते हैं। होस्ट मशीन पर कॉन्फ़िगरेशन फ़ाइल बनाएं और निम्नलिखित कमांड का उपयोग करके कंटेनर को पास करें:
sudo docker run --name mongodb -d -p 27017:27017 -v /my/own/datadir:/data/db -v /my/own/config:/etc/mongo mongo --config /etc/mongo/mongod.conf
/my/own/config
को उस डायरेक्टरी से बदलें जहां आपकी mongod.conf
फ़ाइल स्थित है। यह आपको रेप्लिका सेट्स, शार्डिंग और लॉगिंग जैसी सेटिंग्स को कस्टमाइज़ करने की अनुमति देता है।
लिनक्स के लिए डॉकर पर MongoDB सेट अप करना डेटाबेस को प्रबंधित करने का एक लचीला और कुशल तरीका प्रदान करता है, डॉकर के कंटेनरीकरण लाभ के साथ। यह पर्यावरणों के पार सुसंगतता सुनिश्चित करता है और परिनियोजन प्रक्रियाओं को सरल करता है। इन चरणों का पालन करके, आप डॉकर पर MongoDB को प्रभावी ढंग से चला और सुरक्षित कर सकेंगे।
डॉकर के आइसोलेशन फीचर्स आपके लिए कंटेनरों को आसानी से बनाना और हटाना संभव बनाते हैं, परीक्षण और प्रबंधन को बहुत सरल करते हैं। डेटा को स्थायी बनाने और प्रमाणीकरण जैसी सुरक्षा जोड़ने से उत्पादन वातावरण में MongoDB की मजबूत विशेषताओं का सुरक्षित रूप से लाभ उठाने की अनुमति मिलती है। ध्यान रखें कि कंटेनरीकरण के साथ, डेटा संग्रहण और कॉन्फ़िगरेशन को संभालने का ज्ञान आपकी डेटाबेस सेट अप की प्रदर्शन और विश्वसनीयता को बढ़ा सकता है।
यदि आपको लेख की सामग्री में कुछ गलत लगता है, आप कर सकते हैं