मैं अपने होस्ट सिस्टम को साफ रखने में दृढ़ विश्वास रखता हूं। और डॉकर कंटेनर इसका सही समाधान हैं। मान लीजिए कि आप अपनी DB आवश्यकताओं के लिए एक नोड/एक्सप्रेस बैकएंड और एक MySQL सर्वर के साथ एक रिएक्ट ऐप पर काम कर रहे हैं। आमतौर पर, आप अपने होस्ट सिस्टम में MySQL इंस्टॉल करेंगे, एक डेटाबेस बनाएंगे, एक पासवर्ड के साथ एक उपयोगकर्ता बनाएंगे और उस डेटाबेस के साथ काम करने के लिए उपयोगकर्ता को विशेषाधिकार प्रदान करेंगे।
हर एक प्रोजेक्ट के लिए इसे हर बार कॉन्फ़िगर करने में समय बर्बाद करने के बजाय, मैं अपना MySQL डेटाबेस सर्वर बनाने के लिए बस एक डॉकर छवि का उपयोग करता हूं, जो कुछ ही सेकंड में सभी आवश्यक सेटअप के साथ तैयार, चालू और चालू हो जाता है। कभी जरूरत है.
मेरा विश्वास करें, एक बार जब आप इस मार्ग का उपयोग करके अपने वर्कफ़्लो का पता लगा लेते हैं, तो आप कभी भी पुराने तरीकों पर वापस नहीं लौटेंगे। तो, मैं इसके बारे में बहुत ही सरल, बुनियादी तरीके से बताता हूं।
यदि आपके पास डॉकर के साथ कुछ अनुभव है और आप इस ट्यूटोरियल को छोड़कर सीधे टीएलडीआर संस्करण में शामिल होना चाहते हैं, तो यह गिस्ट बहुत तेज़ होगा।
डॉकर का उपयोग करने के लिए, हमें डॉकर की आवश्यकता है, ओह! मैं यहां डॉकर स्थापित करने के विवरण में नहीं जाऊंगा। यदि आप सीएलआई के साथ सहज नहीं हैं या आप विंडोज़/मैकओएस पर हैं, तो डॉकर डेस्कटॉप चुनें, यह पर्दे के पीछे आपके लिए सभी भारी काम करेगा।
यदि आप इसे महसूस नहीं कर रहे हैं तो लिनक्स उपयोगकर्ता डॉकर कंपोज़ प्लगइन या डॉकर डेस्कटॉप के साथ डॉकर इंजन भी इंस्टॉल कर सकते हैं।
आपको आमतौर पर MySQL आधिकारिक छवि जैसी सार्वजनिक छवियों को डाउनलोड करने के लिए डॉकर हब पर एक खाते की आवश्यकता नहीं है जिसका हम उपयोग करेंगे।
इसे करने के दो तरीके हैं।
डॉकर रन कमांड का उपयोग करके कंटेनर को सीधे चलाने में सक्षम होने के लिए, आपको पहले अपने सिस्टम पर MySQL छवि डाउनलोड करनी होगी। छवि को अपने सिस्टम पर खींचने के लिए, बस इस कमांड का उपयोग करें:
docker pull mysql
नोट: यदि आपको MySQL के किसी विशेष संस्करण की आवश्यकता नहीं है, तो यह कमांड नवीनतम (नवीनतम टैग वाला) डाउनलोड करेगा। यदि आपको आवश्यकता हो तो आप डॉकर हब से अधिक टैग और संस्करण तलाश सकते हैं।
एक बार डॉकर डाउनलोड हो जाने के बाद, आप अपनी डाउनलोड की गई छवि इस तरह देख सकते हैं:
docker image ls
अब, कंटेनर को चलाने के लिए, आपको डॉकर रन कमांड के साथ बहुत सारे झंडे जोड़ने होंगे। आपके पास मौजूद सभी विकल्पों की जांच करने के लिए आप इस लिंक पर जा सकते हैं। आपको उन सभी झंडों को भी याद रखना होगा जिन्हें आपको जोड़ना है क्योंकि उनमें से कुछ के गायब होने से त्रुटियां हो सकती हैं या एक अक्षम कंटेनर शुरू हो सकता है।
इसके अलावा, हर बार जब आप अपना कंटेनर चलाना चाहते हैं, तो आपको या तो टर्मिनल इतिहास से इस लंबे कमांड को निकालना होगा, या इसे फिर से टाइप करना होगा। इसका कोई मतलब नहीं है.
यही कारण है कि मैं इस दृष्टिकोण की अनुशंसा नहीं करता। एक बेहतर रास्ता है।
हम एक डॉकर कंपोज़ फ़ाइल बनाएंगे जो डॉकर को बताएगी कि कंटेनर लॉन्च करते समय हमें क्या चाहिए। एक बार जब सब कुछ फ़ाइल में रख दिया जाता है, तो कंटेनर को लॉन्च करना आसान हो जाता है।
नोट: आप अपनी कंपोज़ फ़ाइल किसी भी नाम से बना सकते हैं। यदि आप अपने स्वयं के नाम का उपयोग करते हैं या अपनी कंपोज़ फ़ाइल को अन्य फ़ोल्डरों में संग्रहीत करते हैं, तो आपको इसे काम करने के लिए एक ध्वज -f प्रदान करना होगा। वैकल्पिक रूप से, यदि आप अपनी फ़ाइल के समान फ़ोल्डर से कमांड चला रहे हैं, तो आप फ़ाइल को docker-compose.yaml नाम दे सकते हैं।
डॉकर कंपोज़ फ़ाइल एक YAML फ़ाइल है। हमारा इस तरह दिखेगा:
# This Docker Compose YAML deploys a MySQL database services: container-name: image: mysql # Official MySQL image from Docker Hub restart: always environment: # Note - Root password is mandatory for the container to run and grant privileges to our User. MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD} MYSQL_DATABASE: ${MYSQL_DATABASE} # Same name as used in your project # DB User Details MYSQL_USER: ${MYSQL_USER} MYSQL_PASSWORD: ${MYSQL_PASSWORD} ports: # Adjust this port as per your needs ->: - 3308:3306 # DB is available at localhost:3308 on the host. volumes: - ./volumes/db-mnt:/var/lib/mysql
यह फ़ाइल शुरुआत में उल्लिखित जिस्ट पर भी उपलब्ध है।
जानना महत्वपूर्ण
आप इस फ़ाइल को या तो उसी फ़ोल्डर में बना सकते हैं जहां आपकी कंपोज़ फ़ाइल है, या आप इसे अपनी इच्छानुसार कहीं भी बना सकते हैं, लेकिन डॉकर-कंपोज़ को कॉल करते समय पथ प्रदान करना होगा।
# Content of the Environment Variables file MYSQL_ROOT_PASSWORD=rootpassword MYSQL_DATABASE=nameofdatabase MYSQL_USER=dbusername MYSQL_PASSWORD=dbuserpassword
एक बार जब हमारे पास यह सब हो जाएगा, तो हम बस एक छोटी सी कमांड का उपयोग कर सकते हैं और हमारा डेटाबेस तैयार हो जाएगा और हमारा इंतजार कर रहा होगा।
docker-compose up -d
अब आप अपने पसंदीदा साधनों का उपयोग करके डेटाबेस से कनेक्शन बनाने के लिए तैयार हैं।
और चूंकि हमने अपने कंटेनरों को एक कंपोज़ फ़ाइल से चलाने के लिए कॉन्फ़िगर किया है, आप इसे अपने रेपो में एक गिट सिस्टम में सुरक्षित रूप से बैकअप कर सकते हैं। बस यह सुनिश्चित करें कि आप .env फ़ाइल को .gitignore करें।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3