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

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

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

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

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



आपने TypeScript में एक शानदार एप्लिकेशन लिखा है। लोकली सब कुछ सही काम कर रहा है, लेकिन अब प्रोजेक्ट को दुनिया को दिखाने का समय है। VPS (Virtual Private Server) पर डिप्लॉय करना एक तार्किक और लचीला कदम है। क्लाउड प्लेटफॉर्म के विपरीत, VPS एनवायरनमेंट पर पूर्ण नियंत्रण देता है।



इस लेख में, हम VPS पर TypeScript एप्लिकेशन डिप्लॉय करने की चरण-दर-चरण प्रक्रिया पर चर्चा करेंगे। हम Node.js, प्रक्रियाओं के प्रबंधन के लिए PM2 और रिवर्स प्रॉक्सी के रूप में Nginx का उपयोग करेंगे। सभी उदाहरण TypeScript में हैं।



यह माना जाता है कि आपको Linux और SSH के साथ काम करने का बुनियादी ज्ञान है।



1. सर्वर तैयार करना और कनेक्ट करना



पहला कदम VPS (DigitalOcean, Vultr, Timeweb आदि) किराए पर लेना और SSH के माध्यम से कनेक्ट करना है।



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


तुरंत पैकेज अपडेट करें और आवश्यक उपयोगिताएँ स्थापित करें:



apt update && apt upgrade -yapt install curl git nginx -y


Node.js स्थापित करें (हम LTS वर्शन की सलाह देते हैं):



curl -fsSL https://deb.nodesource.com/setup_20.x | bash -apt install -y nodejs


वर्शन जाँचें:



node -vnpm -v


2. रिपॉजिटरी क्लोन करना और TypeScript बिल्ड करना



अब अपना प्रोजेक्ट क्लोन करें। उदाहरण के लिए, हम TypeScript में एक सरल Express एप्लिकेशन का उपयोग करेंगे:



git clone https://github.com/आपका_यूज़रनेम/आपका_रिपॉजिटरी.gitcd आपका_रिपॉजिटरी


डिपेंडेंसी स्थापित करें:



npm install


TypeScript को JavaScript में कंपाइल करना होगा। यह आमतौर पर इस कमांड से किया जाता है:



npm run build


package.json में इसे इस प्रकार लिखा जाना चाहिए:



{  "scripts": {    "build": "tsc",    "start": "node dist/index.js"  }}


जाँचें कि dist फ़ोल्डर में कंपाइल की गई फ़ाइलें मौजूद हैं।



3. PM2 स्थापित करना और कॉन्फ़िगर करना



PM2 Node.js के लिए एक प्रक्रिया प्रबंधक है। यह एप्लिकेशन के क्रैश होने पर उसे पुनरारंभ करता है, लॉग और क्लस्टरिंग को सपोर्ट करता है।



PM2 को ग्लोबली स्थापित करें:



npm install pm2 -g


एप्लिकेशन चलाएँ:



pm2 start dist/index.js --name "my-typescript-app"


प्रक्रियाओं की सूची सहेजें ताकि PM2 सर्वर रीबूट के बाद उन्हें पुनर्स्थापित कर सके:



pm2 savepm2 startup


PM2 एक कमांड दिखाएगा जिसे निष्पादित करना होगा (आमतौर पर systemctl enable pm2-root)। इसे कॉपी करें और चलाएँ।



स्थिति इस कमांड से जाँची जा सकती है:



pm2 status


4. Nginx को रिवर्स प्रॉक्सी के रूप में कॉन्फ़िगर करना



Nginx पोर्ट 80 (HTTP) पर अनुरोध प्राप्त करेगा और उन्हें आपके एप्लिकेशन (उदाहरण के लिए, पोर्ट 3000) पर रीडायरेक्ट करेगा।



एक कॉन्फ़िगरेशन फ़ाइल बनाएँ:



nano /etc/nginx/sites-available/my-typescript-app


निम्नलिखित कोड डालें (server_name को अपने डोमेन या IP से बदलें):



server {    listen 80;    server_name आपका_डोमेन.ru www.आपका_डोमेन.ru;

location / { proxy_pass http://localhost:3000; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection 'upgrade'; proxy_set_header Host $host; proxy_cache_bypass $http_upgrade; }}


साइट को सक्रिय करें:



ln -s /etc/nginx/sites-available/my-typescript-app /etc/nginx/sites-enabled/nginx -tsystemctl restart nginx


अब आपका एप्लिकेशन IP या डोमेन के माध्यम से उपलब्ध है।



5. Certbot के साथ HTTPS (SSL) कॉन्फ़िगर करना



HTTPS के बिना अब काम नहीं चलता। Let's Encrypt और Certbot का उपयोग करें।



Certbot स्थापित करें:



apt install certbot python3-certbot-nginx -y


सर्टिफिकेट प्राप्त करने के लिए चलाएँ:



certbot --nginx -d आपका_डोमेन.ru -d www.आपका_डोमेन.ru


स्ल

ब्लॉग

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