कंटेंट पर जाएँ

Daki Hosting पर Discord.js (Node.js) बॉट डिप्लॉय करने की चरण-दर-चरण गाइड।

यह गाइड आपको Daki Hosting पर Discord.js बॉट डिप्लॉय करने के पूरे रास्ते पर ले जाती है — सर्वर बनाने से लेकर आपके बॉट के ऑनलाइन होने और उसका टोकन सुरक्षित रूप से पढ़ने तक।

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

  • अपने बॉट के लिए Node.js सर्वर कैसे बनाएँ
  • अपना कोड कैसे अपलोड करें
  • install command, startup command और Docker image कैसे कॉन्फ़िगर करें
  • .env फ़ाइल से बॉट टोकन सुरक्षित रूप से कैसे सेट करें
  • बॉट कैसे शुरू करें और जाँचें कि वह काम करता है

पूर्वापेक्षाएँ

  • एक Daki अकाउंट (Free Tier या पेड) — देखें अकाउंट बनाएँ
  • एक Discord बॉट जिसका bot token हो, जो Discord Developer Portal में बना हो
  • आपके बॉट का सोर्स कोड, जिसमें discord.js और dotenv डिपेंडेंसी वाली package.json हो

Discord बॉट Discord के सर्वरों से आउटबाउंड कनेक्ट होते हैं और उन्हें इनबाउंड पोर्ट की ज़रूरत नहीं होती। इसका मतलब है कि Discord बॉट Free Tier और पेड दोनों प्लान पर चलते हैं। अगर आपका बॉट HTTP अनुरोध भी सर्व करता है (जैसे slash command interactions या webhooks के लिए), तो आपको पेड प्लान चाहिए, क्योंकि सार्वजनिक पोर्ट केवल पेड प्लान पर उपलब्ध हैं। देखें Network & Allocations।


डिप्लॉयमेंट

  1. Node.js सर्वर बनाएँ

    1. free.daki.cc पर Free Tier Dashboard में, या billing.daki.cc पर Billing Panel में लॉग इन करें।
    2. नया सर्वर बनाएँ और Node.js egg चुनें।
    3. अपने सर्वर को एक नाम दें (जैसे MyDiscordBot)।

    पूरी प्रक्रिया के लिए देखें अपना पहला सर्वर बनाएँ।

  2. Portal खोलें

    SSO से Portal में लॉग इन करें (डैशबोर्ड के Account पेज पर Open Portal या Billing Panel के सर्विस पेज से), या सीधे portal.daki.cc पर। देखें Portal का अवलोकन।

  3. अपने बॉट का कोड अपलोड करें

    विकल्प A — ZIP के रूप में अपलोड (सबसे सरल):

    1. अपने प्रोजेक्ट फ़ोल्डर को स्थानीय रूप से .zip फ़ाइल में कंप्रेस करें।
    2. Portal में Files टैब पर जाएँ और Upload पर क्लिक करें।
    3. .zip पर राइट-क्लिक करें और Extract पर क्लिक करें।

    विकल्प B — SFTP इस्तेमाल करें (आकार की कोई सीमा नहीं): Settings टैब से अपने SFTP क्रेडेंशियल से कनेक्ट करें और अपना फ़ोल्डर सीधे अपलोड करें। देखें File Manager।

    अपलोड में अपना node_modules फ़ोल्डर शामिल न करें — यह install command से अपने-आप इंस्टॉल हो जाएगा। अपनी package.json और package-lock.json ज़रूर शामिल करें।

  4. Startup टैब कॉन्फ़िगर करें

    Startup टैब खोलें और तीनों फ़ील्ड कॉन्फ़िगर करें:

    1. Docker Image — वह Node.js वर्शन चुनें जिसकी आपके बॉट को ज़रूरत है (जैसे Node.js 22 या Node.js 24)। अगर पक्का न हो, तो Node.js 24 LTS एक सुरक्षित डिफ़ॉल्ट है। EOL चिह्नित वर्शन से बचें, क्योंकि उन्हें अब सुरक्षा अपडेट नहीं मिलते।

    2. Install Command — अपनी डिपेंडेंसी अपने-आप इंस्टॉल करने के लिए यह सेट करें:

    Shell
    npm install

    3. Startup Command — इसे उस कमांड पर सेट करें जो आपका बॉट शुरू करती है:

    • node index.js — अगर आपकी एंट्री फ़ाइल index.js है
    • node bot.js — अगर आपकी एंट्री फ़ाइल bot.js है
    • npm start — अगर package.json में start स्क्रिप्ट है

    इन कमांड को अपने प्रोजेक्ट की संरचना के अनुसार बदलने के लिए आप स्वतंत्र हैं।

    पूरी जानकारी के लिए देखें स्टार्टअप सेटिंग।

  5. .env फ़ाइल से बॉट टोकन जोड़ें

    आपके बॉट को कनेक्ट होने के लिए उसका Discord टोकन चाहिए। उसे सर्वर पर .env फ़ाइल में रखें, ताकि वह कभी आपके सोर्स कोड में न जाए।

    1. Files टैब में New File पर क्लिक करें और उसका नाम .env रखें।
    2. अपना टोकन जोड़ें:
      .env
      BOT_TOKEN=your_discord_bot_token_here
    3. Save पर क्लिक करें।

    अपने बॉट कोड में dotenv से उसे लोड करें:

    JavaScript
    require('dotenv').config();
    
    const { Client, GatewayIntentBits } = require('discord.js');
    const client = new Client({ intents: [GatewayIntentBits.Guilds] });
    
    client.once('ready', () => {
        console.log(`Logged in as ${client.user.tag}`);
    });
    
    client.login(process.env.BOT_TOKEN);

    पक्का करें कि dotenv आपकी package.json की डिपेंडेंसी में सूचीबद्ध है, ताकि install command उसे इंस्टॉल करे।

    .env फ़ाइलों के इस्तेमाल के बारे में अधिक जानकारी के लिए देखें एनवायरनमेंट वेरिएबल।

  6. अपना बॉट शुरू करें

    Console टैब में Start पर क्लिक करें। सफल लॉन्च पर आपके बॉट की लॉगिन पुष्टि प्रिंट होगी:

    Text
    Logged in as MyBot#1234!

    अगर इसके बजाय एरर दिखें, तो समस्या निवारण गाइड देखें।


आम समस्याएँ

Error: Cannot find module 'discord.js'

आपकी डिपेंडेंसी इंस्टॉल नहीं हुईं। जाँचें कि आपकी package.json में discord.js डिपेंडेंसी के रूप में है, और Startup टैब में install command npm install पर सेट है। इंस्टॉल शुरू करने के लिए सर्वर रीस्टार्ट करें।

Error: Cannot find module 'dotenv'

dotenv को अपनी package.json की डिपेंडेंसी में जोड़ें और दोबारा इंस्टॉल के लिए सर्वर रीस्टार्ट करें।

Error: An invalid token was provided

.env फ़ाइल में आपका बॉट टोकन गलत है या गायब है। Files टैब में जाएँ, .env खोलें और मान जाँचें। सुनिश्चित करें कि इसमें कोई अतिरिक्त स्पेस, कोटेशन मार्क या लाइन ब्रेक न हो।

बॉट शुरू होता है, लेकिन थोड़ी देर बाद डिस्कनेक्ट हो जाता है

आम तौर पर इसका कारण गायब Gateway Intents होते हैं। Discord Developer Portal में अपने बॉट एप्लिकेशन के लिए ज़रूरी privileged intents (जैसे Message Content Intent) चालू करें, और सुनिश्चित करें कि आपका कोड उन्हें माँगता है।

सर्वर स्टार्ट होते ही क्रैश हो जाता है

Console टैब खोलकर एरर पढ़ें। आम कारण: गलत startup command (फ़ाइलनाम में टाइपो), गलत Node.js वर्शन, या गायब node_modules। देखें समस्या निवारण।


अगले कदम