Python बॉट डिप्लॉय करें
Daki Hosting पर Python Discord बॉट (discord.py या py-cord) डिप्लॉय करने की चरण-दर-चरण गाइड।
यह गाइड आपको Daki Hosting पर Python Discord बॉट डिप्लॉय करने के पूरे रास्ते पर ले जाती है — सर्वर बनाने से लेकर अपना बॉट टोकन सुरक्षित रूप से पढ़ने और लाइव होने तक।
आप क्या सीखेंगे
- अपने बॉट के लिए Python सर्वर कैसे बनाएँ
- अपना कोड कैसे अपलोड करें
- install command, startup command और Python वर्शन कैसे कॉन्फ़िगर करें
.envफ़ाइल से बॉट टोकन सुरक्षित रूप से कैसे सेट करें- बॉट कैसे शुरू करें और जाँचें कि वह काम करता है
पूर्वापेक्षाएँ
- एक Daki अकाउंट (Free Tier या पेड) — देखें अकाउंट बनाएँ
- एक Discord बॉट जिसका bot token हो, जो Discord Developer Portal में बना हो
- आपके बॉट का सोर्स कोड, जिसके साथ एक
requirements.txtहो जिसमें सभी डिपेंडेंसी सूचीबद्ध हों (जैसेdiscord.pyयाpy-cord, औरpython-dotenv)
Discord बॉट Discord के सर्वरों से आउटबाउंड कनेक्ट होते हैं और उन्हें इनबाउंड पोर्ट की ज़रूरत नहीं होती। इसका मतलब है कि Discord बॉट Free Tier और पेड दोनों प्लान पर चलते हैं। अगर आपका बॉट HTTP सर्वर भी चलाता है (जैसे webhooks या वेब डैशबोर्ड के लिए), तो आपको पेड प्लान चाहिए, क्योंकि सार्वजनिक पोर्ट केवल पेड प्लान पर उपलब्ध हैं। देखें Network & Allocations।
डिप्लॉयमेंट
Python सर्वर बनाएँ
- free.daki.cc पर Free Tier Dashboard में, या billing.daki.cc पर Billing Panel में लॉग इन करें।
- नया सर्वर बनाएँ और Python egg चुनें।
- अपने सर्वर को एक नाम दें (जैसे
MyPythonBot)।
पूरी प्रक्रिया के लिए देखें अपना पहला सर्वर बनाएँ।
Portal खोलें
SSO से या सीधे portal.daki.cc पर Portal में लॉग इन करें। देखें Portal का अवलोकन।
अपने बॉट का कोड अपलोड करें
विकल्प A — ZIP के रूप में अपलोड (सबसे सरल):
- अपने प्रोजेक्ट फ़ोल्डर को
.zipफ़ाइल में कंप्रेस करें। - Portal में Files टैब पर जाएँ और Upload पर क्लिक करें।
.zipपर राइट-क्लिक करें और Extract पर क्लिक करें।
विकल्प B — SFTP इस्तेमाल करें (आकार की कोई सीमा नहीं): Settings टैब से अपने SFTP क्रेडेंशियल का इस्तेमाल करके फ़ोल्डर सीधे अपलोड करें। देखें File Manager।
अपने प्रोजेक्ट के रूट में एक
requirements.txtशामिल करें। install command इसी से आपकी डिपेंडेंसी इंस्टॉल करता है।- अपने प्रोजेक्ट फ़ोल्डर को
Startup टैब कॉन्फ़िगर करें
Startup टैब खोलें और तीनों फ़ील्ड कॉन्फ़िगर करें:
1. Docker Image — वह Python वर्शन चुनें जिसकी आपके बॉट को ज़रूरत है (जैसे Python 3.13)। अगर पक्का न हो, तो Python 3.13 एक सुरक्षित डिफ़ॉल्ट है; नए वर्शन तब चलते हैं जब आपकी सभी लाइब्रेरी उन्हें सपोर्ट करती हों। EOL चिह्नित वर्शन से बचें, क्योंकि उन्हें अब सुरक्षा अपडेट नहीं मिलते।
2. Install Command — अपनी डिपेंडेंसी अपने-आप इंस्टॉल करने के लिए यह सेट करें:
Shellpip install -r requirements.txt3. Startup Command — इसे उस कमांड पर सेट करें जो आपका बॉट चलाती है:
python main.py— अगर आपकी एंट्री फ़ाइलmain.pyहैpython bot.py— अगर आपकी एंट्री फ़ाइलbot.pyहैpython -m mypackage— अगर आपका प्रोजेक्ट एक पैकेज के रूप में संरचित है
इन कमांड को अपने प्रोजेक्ट की संरचना और ज़रूरतों के अनुसार बदलने के लिए आप स्वतंत्र हैं।
पूरी जानकारी के लिए देखें स्टार्टअप सेटिंग।
.env फ़ाइल से बॉट टोकन जोड़ें
अपना Discord बॉट टोकन सर्वर पर
.envफ़ाइल में रखें, ताकि वह कभी आपके सोर्स कोड में न दिखे।- Files टैब में New File पर क्लिक करें और उसका नाम
.envरखें। - अपना टोकन जोड़ें:
.env
BOT_TOKEN=your_discord_bot_token_here - Save पर क्लिक करें।
पक्का करें कि
python-dotenvआपकीrequirements.txtमें है, फिर अपने कोड में फ़ाइल लोड करें:Pythonfrom dotenv import load_dotenv import os import discord load_dotenv() TOKEN = os.environ.get("BOT_TOKEN") intents = discord.Intents.default() client = discord.Client(intents=intents) @client.event async def on_ready(): print(f"Logged in as {client.user}") client.run(TOKEN).envफ़ाइलों के इस्तेमाल के बारे में अधिक जानकारी के लिए देखें एनवायरनमेंट वेरिएबल।- Files टैब में New File पर क्लिक करें और उसका नाम
अपना बॉट शुरू करें
Console टैब में Start पर क्लिक करें। सफल लॉन्च पर यह प्रिंट होगा:
TextLogged in as MyBot#1234अगर एरर दिखें, तो समस्या निवारण गाइड देखें।
आम समस्याएँ
ModuleNotFoundError: No module named 'discord'
आपकी डिपेंडेंसी इंस्टॉल नहीं हुईं। जाँचें कि discord.py या py-cord requirements.txt में सूचीबद्ध है, और Startup टैब में install command pip install -r requirements.txt पर सेट है। इंस्टॉल शुरू करने के लिए सर्वर रीस्टार्ट करें।
ModuleNotFoundError: No module named 'dotenv'
python-dotenv को अपनी requirements.txt में जोड़ें और सर्वर रीस्टार्ट करें।
discord.errors.LoginFailure: Improper token has been passed
.env फ़ाइल में आपका टोकन गलत है या गायब है। Files टैब में .env फ़ाइल खोलें और मान ध्यान से जाँचें। किसी भी अतिरिक्त स्पेस या कोटेशन मार्क को हटा दें।
PrivilegedIntentsRequired error
आपका बॉट ऐसे intents माँग रहा है जो Discord Developer Portal में चालू नहीं हैं। अपने बॉट एप्लिकेशन की सेटिंग में ज़रूरी privileged intents (जैसे Message Content Intent) चालू करें, और सुनिश्चित करें कि आपका कोड भी वही intents माँगता है।
सर्वर स्टार्ट होते ही क्रैश हो जाता है
एरर के लिए Console आउटपुट पढ़ें। आम कारण: गलत startup command (फ़ाइलनाम में टाइपो या गलत पाथ), गायब requirements.txt, या कोई पैकेज गायब। देखें समस्या निवारण।
अगले कदम
- एनवायरनमेंट वेरिएबल —
.envफ़ाइलों और कोड में वेरिएबल पढ़ने की पूरी गाइड। - अपना मुफ़्त सर्वर सक्रिय रखें — अपना Free Tier सर्वर चालू रखने के लिए नियमित रूप से विज्ञापन देखें।
- File Manager — बदलाव करने के बाद अपना कोड अपडेट करें।