# Getting Started with Discord Bot Hosting (/docs/discord-bots/getting-started)



import { Step, Steps } from 'fumadocs-ui/components/steps';

XGamingServer makes it easy to host your Discord bot 24/7. Your bot runs on dedicated resources with full panel access for managing files, viewing logs, and configuring startup settings — no VPS or Linux experience required.

What You Get [#what-you-get]

* **24/7 uptime** — Your bot stays online around the clock without needing to keep your PC running.
* **Multiple runtimes** — Host bots written in Node.js, Python, Java, Go, C#, .NET, Lua, and PHP.
* **Full console access** — View your bot's output, errors, and logs in real time from the `Console` page.
* **File manager** — Upload, edit, and manage your bot's files directly from the `Files` page in the panel.
* **Backups** — Create and restore backups of your bot's files from the `Backups` page.

Server Types [#server-types]

XGamingServer offers different server types for bot hosting. You can tell which one you have by checking the `Startup` page in the panel.

Discord Bot Server [#discord-bot-server]

The multi-language Discord Bot server has a single **Startup Command** variable. You control what runs by typing the full command (e.g., `node index.js`, `python3 bot.py`).

| Language  | Startup Command Example | How to Install Packages                            |
| --------- | ----------------------- | -------------------------------------------------- |
| Node.js   | `node index.js`         | `npm install` via `/bin/bash`                      |
| Python 3  | `python3 bot.py`        | `pip3 install -r requirements.txt` via `/bin/bash` |
| Java      | `java -jar bot.jar`     | Packages are included in the JAR                   |
| C# / .NET | `mono Bot.exe`          | Packages are included in the EXE                   |
| Go        | `./bot`                 | Compile for `GOOS=linux GOARCH=amd64`              |
| Lua 5.3   | `lua bot.lua`           | —                                                  |
| PHP 7.2   | `php bot.php`           | —                                                  |

> 💡 **Tip:** To install packages or run commands manually, set the **Startup Command** to `/bin/bash`. This gives you an interactive terminal in the `Console` where you can run `npm install`, `pip3 install`, and other commands. Change the startup command back to your bot's run command when done.

Standalone Node.js Server [#standalone-nodejs-server]

The dedicated Node.js server has separate variables on the `Startup` page:

| Variable                     | Description                                                                               |
| ---------------------------- | ----------------------------------------------------------------------------------------- |
| **Main File**                | The entry point for your bot (e.g., `index.js`, `bot.js`). Supports `.js` and `.ts` files |
| **Git Repo Address**         | Optional — clone your bot directly from a GitHub URL                                      |
| **Install Branch**           | Which branch to clone (leave blank for the repo default)                                  |
| **Auto Update**              | Pull the latest code from GitHub on each restart (`0` = off, `1` = on)                    |
| **User Uploaded Files**      | Set to `1` if you are uploading files manually instead of using Git (`0` = off, `1` = on) |
| **Additional Node Packages** | Extra npm packages to install (space-separated)                                           |
| **Git Username**             | Username for private repository authentication                                            |
| **Git Access Token**         | Personal access token for private repository authentication                               |

Dependencies from `package.json` are installed **automatically** on each start — no need for `/bin/bash`.

Standalone Python Server [#standalone-python-server]

The dedicated Python server has separate variables on the `Startup` page:

| Variable                       | Description                                                                               |
| ------------------------------ | ----------------------------------------------------------------------------------------- |
| **App py File**                | The main Python file to run (default: `app.py`)                                           |
| **Git Repo Address**           | Optional — clone your bot directly from a GitHub URL                                      |
| **Git Branch**                 | Which branch to clone (leave blank for the repo default)                                  |
| **Auto Update**                | Pull the latest code from GitHub on each restart (`0` = off, `1` = on)                    |
| **User Uploaded Files**        | Set to `1` if you are uploading files manually instead of using Git (`0` = off, `1` = on) |
| **Additional Python Packages** | Extra pip packages to install (space-separated)                                           |
| **Requirements File**          | Custom requirements file name (default: `requirements.txt`)                               |
| **Git Username**               | Username for private repository authentication                                            |
| **Git Access Token**           | Personal access token for private repository authentication                               |

Dependencies from `requirements.txt` are installed **automatically** on each start — no need for `/bin/bash`.

Available Docker Images [#available-docker-images]

Your server can use different Docker images depending on the language you need:

* **Node.js**: Versions 12 through 23
* **Python**: Versions 2.7, 3.7, 3.8, 3.9, 3.10

If you need a specific version, contact support or join our [Discord](https://discord.xgamingserver.com) to switch.

Requirements [#requirements]

Before you begin, you need:

1. **An XGamingServer account** — Sign up and purchase a Discord bot hosting plan.
2. **A Discord bot token** — Created for free at the [Discord Developer Portal](https://discord.com/developers/applications). See our [Create a Bot Token](/docs/discord-bots/create-bot-token) guide.
3. **Your bot's source code** — Ready to upload as files or available on GitHub.

Next Steps [#next-steps]

* [Create a Bot Token](/docs/discord-bots/create-bot-token) — Register your bot on Discord and get a token.
* [Install a Node.js Bot](/docs/discord-bots/install-nodejs-bot) — Deploy a Node.js bot like discord.js.
* [Install a Python Bot](/docs/discord-bots/install-python-bot) — Deploy a Python bot like discord.py.
* [Install a Custom Bot from GitHub](/docs/discord-bots/install-custom-bot) — Download and deploy any bot from GitHub.
