Jenkins tutorial with examples in hindi

 Jenkins Tutorial in Hindi

Jenkins एक ओपन-सोर्स ऑटोमेशन टूल है जो मुख्य रूप से सॉफ़्टवेयर डेवलपमेंट के दौरान कंटिन्यूस इंटिग्रेशन (CI) और कंटिन्यूस डिलीवरी (CD) के लिए उपयोग किया जाता है। यह डेवलपर्स को कोड को स्वचालित रूप से बिल्ड, टेस्ट और डिप्लॉय करने की सुविधा देता है। Jenkins का उपयोग सॉफ़्टवेयर के डेवेलपमेंट और डिप्लॉयमेंट प्रोसेस को ऑटोमेट करने के लिए किया जाता है, जिससे पूरी प्रक्रिया तेज़, सुरक्षित और बिना किसी मानव हस्तक्षेप के होती है।

इस ट्यूटोरियल में हम Jenkins के बारे में बुनियादी जानकारी, इसकी स्थापना, और उदाहरणों के साथ इसे उपयोग करने की प्रक्रिया सीखेंगे।


1. Jenkins क्या है?

Jenkins एक ऑटोमेशन सर्वर है जो सॉफ़्टवेयर डेवलपमेंट की प्रक्रिया को ऑटोमेट करने के लिए उपयोग किया जाता है। यह विशेष रूप से कंटिन्यूस इंटिग्रेशन (CI) और कंटिन्यूस डिलीवरी (CD) के लिए प्रसिद्ध है, लेकिन इसका उपयोग डेवेलपमेंट, टेस्टिंग, डिप्लॉयमेंट, और अन्य कार्यों के लिए भी किया जा सकता है। Jenkins को Java में लिखा गया है और यह प्लगइन्स की मदद से कस्टम कार्यों को पूरा करता है।

2. Jenkins की विशेषताएँ

  • ऑटोमेशन: Jenkins स्वचालित रूप से कोड बिल्ड करता है, टेस्ट करता है और उसे डिप्लॉय करता है।
  • प्लगइन्स: Jenkins में हजारों प्लगइन्स होते हैं जो इसे विभिन्न टूल्स और सर्विसेस के साथ इंटीग्रेट करने की सुविधा देते हैं।
  • स्केलेबिलिटी: Jenkins को बड़े और छोटे दोनों प्रकार के प्रोजेक्ट्स के लिए आसानी से स्केल किया जा सकता है।
  • मल्टी-यूज़र सपोर्ट: Jenkins मल्टी-यूज़र वातावरण में काम कर सकता है और विभिन्न यूज़र्स को विशिष्ट अनुमतियाँ दे सकता है।
  • विविधता: Jenkins को कई भाषाओं और टेक्नोलॉजीज जैसे Java, Python, PHP, Node.js, etc. के साथ काम करने के लिए सेट किया जा सकता है।

3. Jenkins इंस्टॉलेशन

Step 1: Jenkins को डाउनलोड और इंस्टॉल करें

Linux पर Jenkins इंस्टॉल करना:
  1. Jenkins रिपॉजिटरी की GPG Key जोड़ें:

    bash
    curl -fsSL https://pkg.jenkins.io/debian/jenkins.io.key | sudo tee \ /usr/share/keyrings/jenkins.asc > /dev/null
  2. Jenkins रिपॉजिटरी जोड़ें:

    bash
    echo deb [signed-by=/usr/share/keyrings/jenkins.asc] https://pkg.jenkins.io/debian \ stable main | sudo tee /etc/apt/sources.list.d/jenkins.list > /dev/null
  3. Jenkins को इंस्टॉल करें:

    bash
    sudo apt update sudo apt install jenkins
  4. Jenkins सर्वर स्टार्ट करें:

    bash
    sudo systemctl start jenkins
  5. Jenkins सर्वर की स्थिति चेक करें:

    bash
    sudo systemctl status jenkins
Windows पर Jenkins इंस्टॉल करना:

Windows पर Jenkins इंस्टॉल करने के लिए, Jenkins की Windows इंस्टॉलर से .msi फाइल डाउनलोड करें और इंस्टॉलेशन प्रोसेस को फॉलो करें।

Step 2: Jenkins Web Interface तक पहुँचें

  1. Jenkins सर्वर के बाद, आपके ब्राउज़र में http://localhost:8080 पर जाएं।
  2. पहला लॉगिन करने के लिए, आपको एक एडमिन पैनल की कुंजी की आवश्यकता होगी, जो /var/lib/jenkins/secrets/initialAdminPassword (Linux) या C:\Program Files (x86)\Jenkins\secrets\initialAdminPassword (Windows) पर स्टोर होती है।

4. Jenkins की मुख्य कार्यप्रणाली

(i) Job (जॉब) बनाना

Jenkins के द्वारा किए गए कार्यों को "जॉब्स" के रूप में सेट किया जाता है। एक जॉब एक स्वचालित कार्य है, जैसे कि कोड बिल्ड करना, कोड को टेस्ट करना, और फिर उसे डिप्लॉय करना। हम Jenkins में कई प्रकार की जॉब्स बना सकते हैं:

  • Freestyle project: यह सबसे सामान्य प्रकार की जॉब होती है। इसमें आप कोड बिल्डिंग, टेस्टिंग और डिप्लॉयमेंट प्रोसेस को कस्टमाइज कर सकते हैं।
  • Pipeline: एक पाइपलाइन जॉब विशेष रूप से कंटिन्यूस डिलीवरी के लिए उपयोग होती है। इसमें हम बिल्ड, टेस्ट, और डिप्लॉय के प्रोसेस को कोड के रूप में परिभाषित कर सकते हैं।
Example: Freestyle Project जॉब बनाना
  1. Jenkins डैशबोर्ड पर जाएं और "New Item" पर क्लिक करें।
  2. "Freestyle project" को चुनें और जॉब का नाम दें, जैसे "MyFirstJob"।
  3. "OK" पर क्लिक करें।
  4. "Source Code Management" सेक्शन में, आप गिट या अन्य रिपॉजिटरी सेट कर सकते हैं।
  5. "Build" सेक्शन में, आप बिल्ड टूल जैसे Maven, Gradle, या Ant का उपयोग कर सकते हैं।

जब आप "Save" पर क्लिक करेंगे, तो Jenkins उस जॉब को सेव कर देगा और आप इसे रन कर सकते हैं।

(ii) Jenkins Pipeline बनाना

Jenkins पाइपलाइन एक सीरीज़ होती है जिसमें विभिन्न स्टेज होते हैं (जैसे, बिल्ड, टेस्ट, डिप्लॉय)। पाइपलाइन को दो तरीकों से परिभाषित किया जा सकता है:

  1. Declarative Pipeline (एक सिंटैक्स आधारित तरीका)
  2. Scripted Pipeline (यह अधिक फ्लेक्सिबल और प्रोग्रामेटिक तरीका है)
Example: Declarative Pipeline
groovy
pipeline { agent any stages { stage('Build') { steps { echo 'Building the application...' } } stage('Test') { steps { echo 'Testing the application...' } } stage('Deploy') { steps { echo 'Deploying the application...' } } } }

(iii) Jenkins के साथ Git इंटीग्रेशन

Jenkins को गिट के साथ इंटीग्रेट करके आप अपने कोड रिपॉजिटरी से सीधे कोड को क्लोन कर सकते हैं और उसे बिल्ड कर सकते हैं।

  1. Source Code Management सेक्शन में, "Git" ऑप्शन को चुनें।

  2. Repository URL में अपने Git रिपॉजिटरी का URL डालें, जैसे:

    bash
    https://github.com/user/repo.git
  3. "Credentials" में अपने Git क्रेडेंशियल्स डालें और "Save" पर क्लिक करें।

(iv) Build Trigger सेट करना

Jenkins में, आप बिल्ड ट्रिगर सेट कर सकते हैं ताकि स्वचालित रूप से बिल्ड प्रोसेस शुरू हो सके। कुछ सामान्य बिल्ड ट्रिगर्स:

  • Poll SCM: इस विकल्प को चुनकर, Jenkins निर्धारित समय अंतराल पर गिट रिपॉजिटरी को चेक करता है और यदि कोई बदलाव हुआ हो तो बिल्ड प्रोसेस को शुरू करता है।
  • GitHub hook trigger: GitHub पर किसी कमिट के बाद Jenkins को ट्रिगर करने के लिए GitHub हुक्स का उपयोग किया जाता है।

5. Jenkins Plugins का उपयोग

Jenkins का सबसे बड़ा फायदा है इसके द्वारा प्रदान किए जाने वाले Plugins। Jenkins के साथ आप ढेर सारे प्लगइन्स का उपयोग कर सकते हैं जो किसी विशेष टूल के साथ इंटीग्रेट करने के लिए होते हैं।

  1. Jenkins में Plugins इंस्टॉल करना:
    • Jenkins डैशबोर्ड पर जाएं।
    • "Manage Jenkins" > "Manage Plugins" पर क्लिक करें।
    • "Available" टैब पर जाएं और आवश्यक प्लगइन खोजें।
    • उसे इंस्टॉल करें।

कुछ प्रमुख Jenkins प्लगइन्स:

  • Git Plugin: Git रिपॉजिटरी के साथ इंटीग्रेशन के लिए।
  • Maven Plugin: Maven बिल्ड टूल के लिए।
  • Slack Notification Plugin: Jenkins द्वारा बिल्ड के परिणाम को Slack चैनल पर भेजने के लिए।
  • Docker Plugin: Jenkins को Docker कंटेनरों के साथ इंटीग्रेट करने के लिए।

6. Jenkins की सुरक्षा सेट करना

Jenkins की सुरक्षा सेट करना बहुत महत्वपूर्ण है, खासकर यदि इसे प्रोडक्शन एनवायरनमेंट में उपयोग किया जा रहा है।

  1. Manage Jenkins > Configure Global Security पर जाएं।
  2. Enable security चेकबॉक्स को टिक करें।
  3. आप "Jenkins' own user database" का उपयोग कर सकते हैं और उपयोगकर्ताओं को विशिष्ट अनुमतियाँ दे सकते हैं।

निष्कर्ष

Jenkins एक शक्तिशाली ऑटोमेशन टूल है जो सॉफ़्टवेयर डेवलपमेंट के विभिन्न पहलुओं को स्वचालित करने में मदद करता है। इस ट्यूटोरियल में, हमने Jenkins के बारे में बुनियादी जानकारी प्राप्त की, उसकी स्थापना, जॉब्स और पाइपलाइन्स बनाने के तरीके, Git इंटीग्रेशन, और प्लगइन्स के उपयोग को समझा। Jenkins का उपयोग करके आप अपनी सॉफ़्टवेयर डेवलपमेंट और डिप्लॉयमेंट प्रक्रिया को ऑटोमेट कर सकते हैं, जिससे समय और प्रयास की बचत होती है।

Comments

Popular posts from this blog

PrimeNG tutorial with examples using frequently used classes

Docker and Kubernetes Tutorials and QnA

Building strong foundational knowledge in frontend development topics