Bots und Anwendungen mit Node.js und Python
Ihr Panel hostet nicht nur Spiele: Es wird mit zwei generischen Eggs geliefert, um einen Discord-Bot, eine API, eine kleine Website oder ein beliebiges Skript zu betreiben.
Die bereitgestellten Eggs
Sie befinden sich im Nest Generic, der in Ihrem Panel bereits installiert ist:
| Egg | Versionen (Docker Image) | Gestartetes Programm |
|---|---|---|
| Node.js generic | Node.js 22 bis 26 | Variable MAIN_FILE (standardmäßig index.js; eine .ts-Datei wird mit tsx gestartet) |
| Python generic | Python 3.7 bis 3.14 | Variable PY_FILE (standardmäßig app.py) |
Diese Eggs stammen aus dem Community-Repository pelican-eggs (MIT-Lizenz) und wurden von Nebus für Pterodactyl angepasst.
Den Server erstellen
- Administration → Servers → Create New: ein Name, der Eigentümer und ein Port (Default Allocation), auch wenn Ihr Bot keinen verwendet.
- Ressourcen: Ein einfacher Bot kommt mit 256 bis 512 MiB Arbeitsspeicher und 50 % CPU aus, eine Website oder API mit 512 MiB bis 1 GB.
- Nest Configuration: Generic, dann Node.js generic oder Python generic. Wählen Sie die Version unter Docker Image.
- Service Variables: die zu startende Datei und gegebenenfalls das Git-Repository (siehe unten). Wenn Sie Ihre Dateien selbst hochladen, setzen Sie User Uploaded Files auf
1. - Create Server. Die Installation dauert weniger als eine Minute.

Ihren Code hinzufügen
- Von Ihrem Computer: Reiter Files (Schaltfläche Upload) oder per SFTP (siehe Dateien und SFTP). Legen Sie die Startdatei ins Hauptverzeichnis.
- Aus Git: Füllen Sie Git Repo Address aus (und bei Bedarf Install Branch); für ein privates Repository Git Username und ein Token unter Git Access Token. Das Repository wird bei der Installation geklont; mit Auto Update auf
1wird es bei jedem Start aktualisiert (git pull).
Diese Einstellungen lassen sich später im Reiter Startup des Servers ändern. Um ein anderes Repository zu klonen, ändern Sie die Adresse und dann Settings → Reinstall Server (der Ordner muss leer sein).

Abhängigkeiten
- Node.js: Ist eine
package.jsonvorhanden, läuftnpm installbei jedem Start. Die Variable Additional Node packages fügt Pakete hinzu (durch Leerzeichen getrennt), Uninstall Node packages entfernt welche. - Python: Ist die Datei
requirements.txt(VariableREQUIREMENTS_FILE) vorhanden, wird sie bei jedem Start mit pip installiert. Die Variable Additional Python packages fügt Pakete hinzu.
Die Pakete werden im Ordner des Servers installiert und zählen zu seinem Speicherplatz.
Starten und überwachen

Klicken Sie in der Konsole auf Start. Der Server wechselt zu Running (grün), sobald Ihr Programm seine erste Zeile ausgibt; gibt es nie etwas aus, bleibt er auf Starting (gelb), ohne weitere Folgen. Stop sendet Strg+C an Ihr Programm.
Für einen automatischen Neustart jede Nacht nutzen Sie eine geplante Aufgabe.
Eine Webanwendung
Ihre Anwendung muss auf dem Port des Servers lauschen, den die Umgebungsvariable SERVER_PORT angibt, und auf allen Adressen (0.0.0.0):
const http = require('node:http');
const port = process.env.SERVER_PORT;
http.createServer((req, res) => res.end('Hallo!')).listen(port, '0.0.0.0');
Sie ist dann per HTTP unter der Adresse und dem Port erreichbar, die in der Konsole angezeigt werden (zum Beispiel http://gra1.nebus.fr:30000; die Adresse Ihres Panels steht in der Zeile Serveradresse des Kundenbereichs), oder unter Ihrer dedizierten IP. HTTPS wird auf diesen Ports nicht bereitgestellt.
Tokens und Passwörter
Legen Sie das Token Ihres Bots nicht in ein öffentliches Git-Repository. Speichern Sie es in einer Datei (zum Beispiel .env, von Ihrem Programm gelesen), die Sie über den Reiter Files hochladen, oder in einer Datenbank des Servers (siehe Datenbanken).