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

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

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

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

परिचय

.NET प्लेटफॉर्म पर C# एप्लिकेशन विकसित करना केवल आधा काम है। आपके प्रोजेक्ट को इंटरनेट पर उपयोगकर्ताओं के लिए उपलब्ध कराने के लिए, इसे सर्वर पर सही ढंग से डिप्लॉय करना आवश्यक है। VPS (Virtual Private Server) छोटे और मध्यम व्यवसायों और इंडी डेवलपर्स के लिए एक आदर्श समाधान है: यह किफायती मूल्य पर पर्यावरण पर पूर्ण नियंत्रण प्रदान करता है। इस लेख में, हम Linux (Ubuntu 22.04) पर चलने वाले VPS पर C# एप्लिकेशन को डिप्लॉय करने की पूरी प्रक्रिया पर चर्चा करेंगे। आप सीखेंगे कि सर्वर कैसे तैयार करें, एप्लिकेशन को कैसे पब्लिश करें, Nginx के साथ reverse proxy कैसे सेट करें और systemd के माध्यम से ऑटोस्टार्ट कैसे सुनिश्चित करें।

1. VPS तैयार करना और .NET Runtime स्थापित करना

1.1. सर्वर से कनेक्ट करना

VPS खरीदने के बाद, आपको IP पता और root पासवर्ड मिलेगा। SSH के माध्यम से कनेक्ट करें:

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

सुरक्षा के लिए तुरंत एक अलग उपयोगकर्ता बनाने की अनुशंसा की जाती है:

adduser appuser
usermod -aG sudo appuser
su - appuser

1.2. .NET Runtime स्थापित करना

सर्वर पर C# एप्लिकेशन चलाने के लिए ASP.NET Core Runtime की आवश्यकता है। Microsoft रिपॉजिटरी जोड़ें और पैकेज स्थापित करें:

wget https://packages.microsoft.com/config/ubuntu/22.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
sudo apt-get update
sudo apt-get install -y aspnetcore-runtime-8.0

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

dotnet --list-runtimes

आपको ASP.NET Core 8.0.0 संस्करण के साथ एक पंक्ति देखनी चाहिए।

2. एप्लिकेशन प्रकाशित करना और सर्वर पर अपलोड करना

2.1. स्थानीय मशीन पर प्रकाशन (publish)

Visual Studio या .NET CLI वाले अपने कंप्यूटर पर, प्रोजेक्ट खोलें और प्रकाशन कमांड निष्पादित करें:

dotnet publish -c Release -o ./publish

यह कमांड एक publish फ़ोल्डर बनाएगा जिसमें एप्लिकेशन चलाने के लिए आवश्यक सभी फ़ाइलें होंगी (यदि आप FDD — Framework-Dependent Deployment का उपयोग कर रहे हैं तो runtime-निर्भरताएँ भी शामिल हैं)।

2.2. VPS पर अपलोड करना

scp या sftp का उपयोग करके publish फ़ोल्डर को सर्वर पर कॉपी करें। स्थानीय मशीन पर निष्पादित करें:

scp -r ./publish appuser@आपका-सर्वर-आईपी:/home/appuser/myapp

अब सर्वर पर जाँच करें कि फ़ाइलें मौजूद हैं:

ls -la /home/appuser/myapp

3. ऑटोस्टार्ट के लिए systemd कॉन्फ़िगर करना

एप्लिकेशन को सिस्टम स्टार्ट पर चालू करने और क्रैश के बाद स्वचालित रूप से पुनरारंभ करने के लिए, एक systemd यूनिट बनाएँ।

3.1. सेवा फ़ाइल बनाना

root अधिकारों के साथ फ़ाइल /etc/systemd/system/myapp.service बनाएँ:

sudo nano /etc/systemd/system/myapp.service

निम्नलिखित सामग्री डालें:

[Unit]
Description=My ASP.NET Core Application
After=network.target

[Service]
WorkingDirectory=/home/appuser/myapp
ExecStart=/usr/bin/dotnet /home/appuser/myapp/YourAppName.dll
Restart=always
RestartSec=10
KillSignal=SIGINT
SyslogIdentifier=myapp
User=appuser
Environment=ASPNETCORE_ENVIRONMENT=Production
Environment=ASPNETCORE_URLS=http://localhost:5000

[Install]
WantedBy=multi-user.target

YourAppName.dll को अपनी वास्तविक .dll फ़ाइल के नाम से बदलें (आमतौर पर यह प्रोजेक्ट के नाम से मेल खाता है)।

3.2. सेवा प्रारंभ और सक्षम करना

sudo systemctl daemon-reload
sudo systemctl start myapp
sudo systemctl enable myapp

स्थिति जाँचें:

sudo systemctl status myapp

यदि सब कुछ सही ढंग से कॉन्फ़िगर किया गया है, तो आपको स्थिति active (running) दिखाई देगी। अब एप्लिकेशन स्थानीय इंटरफ़ेस पर पोर्ट 5000 पर सुन रहा है।

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

मानक पोर्ट (80/443) पर बाहर से एप्लिकेशन तक पहुँचने और SSL प्रमाणपत्र जोड़ने के लिए, Nginx स्थापित और कॉन्फ़िगर करें।

4.1. Nginx स्थापित करना

sudo apt update
sudo apt install nginx -y

4.2. साइट कॉन्फ़िगरेशन

```

ब्लॉग

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