VPS पर TypeScript एप्लिकेशन डिप्लॉय करना: A से Z तक चरण-दर-चरण गाइड

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

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

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

परिचय: आपके TypeScript प्रोजेक्ट के लिए VPS एक आदर्श स्थान क्यों है?

\n\n

आपने TypeScript में एक बेहतरीन एप्लिकेशन लिखा है - चाहे वह Express सर्वर हो, Next.js साइट हो या NestJS API। स्थानीय रूप से सब कुछ पूरी तरह से काम करता है, लेकिन अब प्रोजेक्ट को दुनिया को दिखाने का समय आ गया है। कई शुरुआती डिप्लॉय के चरण से डरते हैं, इसे जटिल और भ्रमित करने वाला मानते हैं। वास्तव में, इस प्रक्रिया को एक बार समझ लें - और आप किसी भी TypeScript प्रोजेक्ट को 15-20 मिनट में डिप्लॉय कर सकते हैं।

\n\n

इस गाइड में, हम VPS (वर्चुअल प्राइवेट सर्वर) पर TypeScript एप्लिकेशन डिप्लॉय करने के पूरे चक्र को समझेंगे - सर्वर तैयार करने से लेकर डोमेन और HTTPS सेटअप करने तक। यह लेख Node.js इकोसिस्टम पर केंद्रित है, क्योंकि TypeScript का उपयोग अक्सर इसी के साथ किया जाता है।

\n\n

आप क्या सीखेंगे:

\n
    \n
  • VPS को काम के लिए कैसे तैयार करें (Ubuntu 22.04)
  • \n
  • Node.js, TypeScript और प्रोसेस मैनेजर PM2 कैसे सेटअप करें
  • \n
  • TypeScript को production-मोड में कैसे बिल्ड (कंपाइल) करें
  • \n
  • Nginx को reverse proxy के रूप में कैसे कॉन्फ़िगर करें
  • \n
  • Let's Encrypt के माध्यम से मुफ्त SSL सर्टिफिकेट कैसे कनेक्ट करें
  • \n
\n\n

1. VPS तैयार करना और आवश्यक वातावरण स्थापित करना

\n\n

1.1 प्रारंभिक सर्वर सेटअप

\n\n

मान लीजिए कि आपने Ubuntu 22.04 के साथ एक VPS किराए पर लिया है (उदाहरण के लिए, DigitalOcean, Timeweb या Reg.ru से)। सबसे पहले SSH के माध्यम से सर्वर से कनेक्ट करें:

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

एक अलग उपयोगकर्ता बनाएं (रूट के रूप में काम करने से अधिक सुरक्षित):

\n\n
adduser deployer\nusermod -aG sudo deployer\nsu - deployer
\n\n

1.2 Node.js और npm स्थापित करना

\n\n

TypeScript एप्लिकेशन के लिए हमें Node.js संस्करण 18 या 20 (LTS) की आवश्यकता होगी। आधिकारिक NodeSource PPA का उपयोग करें:

\n\n
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -\nsudo apt-get install -y nodejs
\n\n

स्थापना की जाँच करें:

\n\n
node -v\nnpm -v
\n\n

1.3 TypeScript को वैश्विक रूप से स्थापित करना (वैकल्पिक)

\n\n

हालांकि TypeScript आमतौर पर प्रोजेक्ट की स्थानीय निर्भरता के रूप में आता है, त्वरित संकलन जांच के लिए इसे वैश्विक रूप से स्थापित किया जा सकता है:

\n\n
sudo npm install -g typescript
\n\n

1.4 अपने प्रोजेक्ट को क्लोन करना

\n\n

GitHub/GitLab से रिपॉजिटरी को सर्वर पर कॉपी करें:

\n\n
git clone https://github.com/आपका-उपयोगकर्ता-नाम/आपका-प्रोजेक्ट.git\ncd आपका-प्रोजेक्ट
\n\n

निर्भरताएँ स्थापित करें:

\n\n
npm install
\n\n

2. TypeScript बिल्ड और PM2 सेटअप

\n\n

2.1 TypeScript को JavaScript में कंपाइल करना

\n\n

आपके package.json में एक बिल्ड स्क्रिप्ट होनी चाहिए। यह आमतौर पर इस तरह दिखती है:

\n\n
{\n  "scripts": {\n    "build": "tsc",\n    "start": "node dist/index.js",\n    "dev": "ts-node-dev src/index.ts"\n  }\n}
\n\n

बिल्ड चलाएँ:

\n\n
npm run build
\n\n

निष्पादन के बाद, dist फ़ोल्डर में कंपाइल किया गया JavaScript कोड दिखाई देगा। यदि आपके पास Next.js है, तो बिल्ड कमांड npm run build होगा (Next.js स्वयं TypeScript कंपाइल करता है)।

\n\n

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

\n\n

PM2 एक प्रोसेस मैनेजर है जो आपके एप्लिकेशन को चालू रखता है, क्रैश होने पर इसे पुनरारंभ करता है और लॉग प्रबंधित करता है। इसे स्थापित करें:

\n\n
sudo npm install -g pm2
\n\n

PM2 के माध्यम से एप्लिकेशन चलाएँ (कंपाइल की गई फ़ाइल का पथ निर्दिष्ट करें):

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

यदि आपके पास Next.js है, तो कमांड अलग होगा:

\n\n
pm2 start npm --name "next-app" -- start
\n\n

सर्वर रीबूट होने पर PM2 को ऑटोस्टार्ट करने के लिए सेटअप करें:

\n\n
pm2 startup systemd\npm2 save
\n\n

अब आपका एप्लिकेशन स्थानीय पोर्ट (जैसे, 3000) पर काम कर रहा है। आइए इसे डोमेन के माध्यम से सुलभ बनाते हैं।

\n\n

3. Nginx को reverse proxy के रूप में कॉन्फ़िगर करना

\n\n

3.1 Nginx स्थापित करना

\n\n

                
                

ब्लॉग

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