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

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

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

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

परिचय

C# एप्लिकेशन डेवलप करना केवल आधा काम है। आपके प्रोजेक्ट को इंटरनेट पर उपयोगकर्ताओं के लिए सुलभ बनाने के लिए, इसे सर्वर पर तैनात करना आवश्यक है। वर्चुअल प्राइवेट सर्वर (VPS) .NET एप्लिकेशन होस्ट करने के लिए एक आदर्श समाधान है, क्योंकि यह पर्यावरण पर पूर्ण नियंत्रण देता है और आपको विशिष्ट आवश्यकताओं के अनुसार सब कुछ कॉन्फ़िगर करने की अनुमति देता है।

इस लेख में, हम Linux (Ubuntu 22.04) पर चलने वाले VPS पर C# एप्लिकेशन (ASP.NET Core) को डिप्लॉय करने की पूरी प्रक्रिया को समझेंगे। आप सीखेंगे कि सर्वर कैसे तैयार करें, आवश्यक सॉफ़्टवेयर कैसे इंस्टॉल करें, एप्लिकेशन को कैसे प्रकाशित करें और इसके साथ काम करने के लिए वेब सर्वर को कैसे कॉन्फ़िगर करें। सभी चरण कोड और कमांड के उदाहरणों के साथ दिए गए हैं।



1. VPS तैयार करना और .NET SDK इंस्टॉल करना

पहला कदम सर्वर तैयार करना है। हम Ubuntu 22.04 LTS का उपयोग करेंगे, क्योंकि यह सर्वरों के लिए सबसे लोकप्रिय और स्थिर ऑपरेटिंग सिस्टम में से एक है। SSH के माध्यम से VPS से कनेक्ट करें:

ssh user@your-server-ip

लॉग इन करने के बाद, पैकेज सूची अपडेट करें और आवश्यक निर्भरताएँ इंस्टॉल करें:

sudo apt updatesudo apt upgrade -ysudo apt install wget apt-transport-https software-properties-common -y

अब Microsoft रिपॉजिटरी जोड़ें और .NET SDK इंस्टॉल करें। .NET 8 के लिए निम्नलिखित निष्पादित करें:

wget https://packages.microsoft.com/config/ubuntu/22.04/packages-microsoft-prod.deb -O packages-microsoft-prod.debsudo dpkg -i packages-microsoft-prod.debsudo apt updatesudo apt install dotnet-sdk-8.0 -y

इंस्टॉलेशन की जाँच करें:

dotnet --version

यदि आपको संस्करण संख्या दिखाई देती है (उदाहरण के लिए, 8.0.100), तो सब कुछ सही ढंग से इंस्टॉल हो गया है।

महत्वपूर्ण: यदि आपका एप्लिकेशन डेटाबेस (जैसे PostgreSQL या SQLite) का उपयोग करता है, तो संबंधित पैकेज इंस्टॉल करें। PostgreSQL के लिए:

sudo apt install postgresql postgresql-contrib -y


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

अब एप्लिकेशन को डिप्लॉयमेंट के लिए तैयार करते हैं। अपने स्थानीय कंप्यूटर (जहाँ डेवलपमेंट हो रहा है) पर, प्रोजेक्ट की रूट डायरेक्टरी में टर्मिनल खोलें और Release मोड में प्रकाशन निष्पादित करें:

dotnet publish -c Release -o ./publish

यह कमांड सर्वर पर एप्लिकेशन चलाने के लिए सभी आवश्यक फ़ाइलों के साथ publish नामक फ़ोल्डर बनाएगा। अब इस फ़ोल्डर को VPS पर अपलोड करना होगा। SCP या SFTP का उपयोग करें। SCP के साथ उदाहरण:

scp -r ./publish user@your-server-ip:/home/user/myapp

जहाँ myapp उस फ़ोल्डर का नाम है जिसमें सर्वर पर आपका एप्लिकेशन संग्रहीत किया जाएगा।

अपलोड करने के बाद, सर्वर से कनेक्ट करें और फ़ाइलों को अधिक उपयुक्त स्थान पर ले जाएँ, उदाहरण के लिए, /var/www/myapp:

sudo mkdir -p /var/www/myappsudo cp -r /home/user/myapp/* /var/www/myapp/

फ़ोल्डर पर सही अनुमति देना न भूलें:

sudo chown -R www-data:www-data /var/www/myappsudo chmod -R 755 /var/www/myapp


3. स्वचालित स्टार्टअप के लिए systemd कॉन्फ़िगर करना

आपके एप्लिकेशन को सिस्टम स्टार्टअप पर स्वचालित रूप से शुरू करने और विफलता की स्थिति में पुनरारंभ करने के लिए, हम एक systemd सेवा बनाएंगे। एक कॉन्फ़िगरेशन फ़ाइल बनाएँ:

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

निम्नलिखित सामग्री डालें (पथ और उपयोगकर्ता नाम को अपने अनुसार बदलें):

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

[Service]WorkingDirectory=/var/www/myappExecStart=/usr/bin/dotnet /var/www/myapp/YourApp.dllRestart=alwaysRestartSec=10KillSignal=SIGINTSyslogIdentifier=myappUser=www-dataEnvironment=ASPNETCORE_ENVIRONMENT=ProductionEnvironment=DOTNET_PRINT_TELEMETRY_MESSAGE=false

[Install]WantedBy=multi-user.target

फ़ाइल सहेजें (Ctrl+O, फिर Enter) और बाहर निकलें (Ctrl+X)। अब systemd को पुनः लोड करें और सेवा शुरू करें:

sudo systemctl daemon-reloadsudo systemctl start myappsudo systemctl enable myapp

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

ब्लॉग

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