परिचय
सबसे सुलभ NoSQL डेटाबेस में से एक, MongoDB®, के कई उपलब्ध डिप्लॉयमेंट विकल्प हैं। इस पोस्ट में, मैं MongoDB को कंटेनर के रूप में डिप्लॉय करने के लिए Docker® का उपयोग करता हूं और उस कंटेनर के साथ इंटरैक्ट करने के लिए शेल क्लाइंट का उपयोग करता हूं।
अपने कंप्यूटर या सर्वर पर Docker इंस्टॉल करने के बाद, MongoDB को Docker कंटेनर के रूप में डिप्लॉय करने के लिए निम्नलिखित चरण करें:
- नवीनतम या विशिष्ट MongoDB Docker इमेज डाउनलोड करें।
- MongoDB के एक इंस्टेंस को कंटेनर के रूप में डिप्लॉय करें।
- मूल शेल ऑपरेशन के साथ MongoDB Docker कंटेनर के साथ इंटरैक्ट करें।
MongoDB Docker इमेज डाउनलोड करें
यदि आपके कंप्यूटर या सर्वर पर Docker इंस्टॉल है, तो आप Docker Hub कंटेनर रजिस्ट्री से MongoDB इमेज प्राप्त कर सकते हैं। विशिष्ट इमेज संस्करण डाउनलोड करना सुनिश्चित करें जिसे आप उपयोग करने की उम्मीद करते हैं, जैसे mongo:4.0.4। आपको इमेज संस्करण निर्दिष्ट करने की आवश्यकता नहीं है, लेकिन यदि आप इसे छोड़ देते हैं, तो आपको सबसे वर्तमान संस्करण मिलता है, जिसके परिणामस्वरूप एक असंगत अनुभव हो सकता है क्योंकि Mongo किसी भी समय नवीनतम संस्करण को अपडेट कर सकता है।
docker images कमांड निष्पादित करने से सर्वर पर उपलब्ध इमेज की सूची मिलती है। हमारे मामले में, यह टैग 4.0.4 के साथ उपयोग के लिए उपलब्ध MongoDB इमेज दिखाता है।
MongoDB इमेज डाउनलोड करने और अपनी उपलब्ध इमेज सूचीबद्ध करने के लिए निम्न कमांड का उपयोग करें:
# docker pull mongo:4.0.4
# docker images
MongoDB के एक इंस्टेंस को कंटेनर के रूप में डिप्लॉय करें
कंटेनर को डिटैच्ड, -d, मोड में शुरू करें। चूंकि कंटेनर एफेमेरल स्टोरेज का उपयोग करते हैं, इसलिए आपको डेटा बनाए रखने के लिए एक वॉल्यूम, -v, माउंट करना चाहिए, लोकल पथ, /data/db प्रदान करके। यह पथ कंटेनर की आंतरिक डायरेक्टरी है। यह कार्रवाई डेटा को होस्ट के /data/db पथ पर संरक्षित करती है, भले ही आप कंटेनर को रोकें या हटा दें। कमांड में, आप अपने कंटेनर के लिए एक नाम, --name, प्रदान करते हैं जिसके बाद Docker इमेज और एक टैग आता है। इस मामले में, मैंने टैग के लिए mongo:4.0.4 का उपयोग किया। कमांड कंटेनर की आईडी के साथ एक स्ट्रिंग लौटाता है। Docker ps कमांड चल रहे कंटेनरों की सूची दिखाता है।
# docker run -d -v /data/db:/data/db --name mymongo mongo:4.0.4
# docker ps
शेल के साथ MongoDB Docker कंटेनर के साथ इंटरैक्ट करें
एक कार्यात्मक MongoDB डिप्लॉयमेंट का लाभ उठाने के लिए, आप शेल क्लाइंट का उपयोग करके डेटाबेस के साथ इंटरैक्ट कर सकते हैं।
चूंकि आप कंटेनर को डिटैच्ड मोड में चला रहे हैं, आपको इंटरएक्टिव टर्मिनल का उपयोग करके कनेक्ट करना चाहिए। अपने डिप्लॉयमेंट से कनेक्ट करने के लिए निम्न कमांड का उपयोग करें, जिसका नाम mymongo है, और bash शेल शुरू करें:
# docker exec -it mymongo bash
MongoDB शेल क्लाइंट लॉन्च करने के लिए, निम्न कमांड चलाएं:
# mongo
MongoDB शेल क्लाइंट से, आप MongoDB दस्तावेज़ीकरण में उल्लिखित सभी फ़ंक्शन एक्सेस कर सकते हैं। उदाहरण के लिए, आप निम्न कमांड के साथ अपने इंस्टेंस में मौजूद डेटाबेस देख सकते हैं:
> show dbs
निष्कर्ष
इस पोस्ट में, मैंने होस्ट सिस्टम से कंटेनर में एक अटैच्ड स्टोरेज वॉल्यूम के साथ Docker का उपयोग करके एक MongoDB कंटेनर बनाया। मैंने आपको यह भी दिखाया कि शेल के माध्यम से MongoDB Docker कंटेनर के साथ इंटरैक्ट करना कैसे शुरू करें। पोस्ट Docker कंटेनर में MongoDB इंस्टेंस चलाने का एक बुनियादी प्रदर्शन प्रदान करता है, लेकिन आप किसी भी संख्या में कंटेनर बनाने के लिए उसी MongoDB इमेज का उपयोग कर सकते हैं। उन कंटेनरों का उपयोग रेप्लिका सेट बनाने और एक मजबूत कंटेनराइज़्ड एप्लिकेशन बनाने के लिए बहुत कुछ करने के लिए करें।
मुझे आशा है कि इस पोस्ट ने आपको MongoDB इंस्टेंस को चालू और चालू करने और मिनटों में इसके साथ काम करना शुरू करने की सामान्य समझ प्राप्त करने में मदद की।