VPS पर Kotlin एप्लिकेशन डिप्लॉय करना: चरण-दर-चरण मार्गदर्शिका

शुरुआती लोगों के लिए ऑनलाइन Python प्रशिक्षक

Python आसानी से सीखें बिना सिद्धांत के बोझ के। स्वचालित जांच के साथ व्यावहारिक कार्य हल करें और ब्राउज़र में सीधे कोड लिखें।

पाठ्यक्रम शुरू करें
```html

VPS पर Kotlin एप्लिकेशन को डिप्लॉय करना: पूर्ण चरण-दर-चरण मार्गदर्शिका



Kotlin में डेवलपमेंट केवल आधा काम है। देर-सबेर यह सवाल उठता है: एप्लिकेशन को लोकल एनवायरनमेंट से रियल सर्वर पर कैसे स्थानांतरित किया जाए? इस लेख में, हम VPS पर Kotlin एप्लिकेशन (Spring Boot के उदाहरण के साथ) को डिप्लॉय करने की विस्तृत प्रक्रिया पर चर्चा करेंगे। आप सीखेंगे कि सर्वर कैसे तैयार करें, JAR फ़ाइल कैसे बनाएं, ऑटोस्टार्ट कैसे सेट करें और HTTPS के माध्यम से सुरक्षित कनेक्शन कैसे सुनिश्चित करें। यह मार्गदर्शिका शुरुआती और उन डेवलपर्स दोनों के लिए उपयुक्त है जो अपने ज्ञान को व्यवस्थित करना चाहते हैं।



1. VPS तैयार करना और आवश्यक सॉफ़्टवेयर इंस्टॉल करना



कोड अपलोड करने से पहले, सर्वर तैयार करना होगा। हम Ubuntu 22.04 LTS या उससे नए वर्जन का उपयोग करने की सलाह देते हैं। SSH के माध्यम से सर्वर से कनेक्ट करें:



ssh root@आपका-सर्वर-आईपी


पैकेज बेस को अपडेट करें और Java इंस्टॉल करें (Kotlin JVM बाइट-कोड में कंपाइल होता है, इसलिए हमें JDK 17 या 21 चाहिए):



sudo apt update && sudo apt upgrade -ysudo apt install openjdk-17-jdk -yjava -version


सुनिश्चित करें कि Java का वर्जन आपके बिल्ड से मेल खाता है। साथ ही, Git (यदि रिपॉजिटरी का उपयोग कर रहे हैं) और आर्काइव के साथ काम करने के लिए उपयोगिताएँ इंस्टॉल करें:



sudo apt install git unzip curl -y


सर्वर पर Kotlin प्रोजेक्ट के साथ काम करने के लिए Kotlin कंपाइलर इंस्टॉल करना आवश्यक नहीं है — हम बिल्ड लोकली या CI/CD के माध्यम से करेंगे। हालाँकि, यदि आप सर्वर पर कंपाइल करने की योजना बना रहे हैं, तो SDKMAN! और Kotlin जोड़ें:



curl -s "https://get.sdkman.io" | bashsource "$HOME/.sdkman/bin/sdkman-init.sh"sdk install kotlin


महत्वपूर्ण: इस चरण पर, बुनियादी सुरक्षा के लिए फ़ायरवॉल (UFW) भी कॉन्फ़िगर करें:



sudo ufw allow OpenSSHsudo ufw allow 8080/tcp  # एप्लिकेशन पोर्टsudo ufw enable


2. Kotlin एप्लिकेशन बनाना और सर्वर पर स्थानांतरित करना



Spring Boot के साथ Kotlin के एक सामान्य प्रोजेक्ट पर विचार करें। JAR फ़ाइल का बिल्ड लोकली (या सर्वर पर, यदि रिपॉजिटरी क्लोन किया है) करें। प्रोजेक्ट की रूट डायरेक्टरी में निम्नलिखित चलाएँ:



./gradlew clean bootJar


या, यदि Maven का उपयोग कर रहे हैं:



mvn clean package


बिल्ड के बाद, build/libs/ (Gradle) या target/ (Maven) फ़ोल्डर में app-0.0.1-SNAPSHOT.jar जैसी फ़ाइल दिखाई देगी। इसे SCP का उपयोग करके सर्वर पर कॉपी करें:



scp build/libs/app-0.0.1-SNAPSHOT.jar root@आपका-आईपी:/opt/myapp/app.jar


सर्वर पर एप्लिकेशन के लिए एक डायरेक्टरी बनाएँ और JAR को वहाँ ले जाएँ:



sudo mkdir -p /opt/myappsudo mv app.jar /opt/myapp/


जाँच करें कि JAR मैन्युअल रूप से चल रहा है या नहीं:



cd /opt/myappjava -jar app.jar --server.port=8080


यदि एप्लिकेशन चालू होता है और पोर्ट 8080 पर रिस्पॉन्स करता है — सब कुछ ठीक है। इसे रोकें (Ctrl+C) और स्थायी रूप से चलाने की सेटिंग पर जाएँ।



3. ऑटोस्टार्ट और मॉनिटरिंग के लिए systemd सेट करना



एप्लिकेशन को सर्वर रीबूट होने पर स्वचालित रूप से शुरू होने और क्रैश के बाद पुनर्स्थापित होने के लिए, एक systemd सर्विस बनाएँ। फ़ाइल बनाएँ:



sudo nano /etc/systemd/system/kotlin-app.service


निम्नलिखित टेम्पलेट डालें (अपने एप्लिकेशन के अनुसार पैरामीटर बदलें):



[Unit]Description=Kotlin Spring Boot ApplicationAfter=network.target

[Service]Type=simpleUser=rootWorkingDirectory=/opt/myappExecStart=/usr/bin/java -jar /opt/myapp/app.jar --server.port=8080Restart=on-failureRestartSec=10StandardOutput=journalStandardError=journal

[Install]WantedBy=multi-user.target


systemd कॉन्फ़िगरेशन को रीलोड करें और सर्विस शुरू करें:



sudo systemctl daemon-reloadsudo systemctl start kotlin-appsudo systemctl status kotlin-app


यदि स्थिति active (running) है — सब कुछ काम कर रहा है। सर्विस को ऑटोस्टार्ट में जोड़ें:



sudo systemctl enable kotlin-app

```

ब्लॉग

पुस्तक अनुशंसाएँ