GB Hosting Logo
sell Server und Self-Hosting

Python-, Node.js- und Bot-Apps auf dem eigenen VPS hosten

Python-, Django-, Laravel- und Node.js-Apps sowie Discord- und Telegram-Bots auf einem VPS betreiben: Prozessverwaltung, Reverse Proxy, Umgebungen und Updates.

Stephan Bauer
Stephan Bauer
12.10.2026 4 Min. Lesezeit
Python-, Node.js- und Bot-Apps auf dem eigenen VPS hosten

Kurz gesagt: Python- (z. B. Django, FastAPI), Node.js- und Laravel-Anwendungen sowie Discord- und Telegram-Bots laufen am zuverlässigsten auf einem VPS: Sie installieren die passende Laufzeit, starten die App als Dienst (systemd, PM2 oder Docker), damit sie nach Abstürzen und Neustarts automatisch wieder läuft, und setzen einen Reverse Proxy mit HTTPS davor. Bots ohne Weboberfläche brauchen keinen Proxy, aber genauso einen Dienst, der sie am Laufen hält.

Warum nicht Shared Hosting?

Shared Hosting ist auf PHP-Websites ausgelegt. Dauerhaft laufende Prozesse (ein Bot, ein Node.js-Server, ein Python-Worker) sind dort meist nicht vorgesehen oder werden beendet. Laravel ist eine Ausnahme: Als PHP-Framework läuft es oft auch auf gutem Shared Hosting, solange Composer und eine aktuelle PHP-Version verfügbar sind; Queues und Scheduler brauchen aber Cronjobs oder einen Worker.

Grundaufbau auf dem VPS

Internet → Reverse Proxy (HTTPS, Port 443) → App (z. B. 127.0.0.1:8000) → Datenbank
  1. Laufzeit installieren: Python (mit virtueller Umgebung python3 -m venv .venv), Node.js (LTS-Version), PHP mit Composer für Laravel, .NET-Runtime für ASP.NET Core.
  2. App nur intern starten: an 127.0.0.1 binden, nicht an alle Schnittstellen.
  3. Als Dienst betreiben, damit sie automatisch neu startet.
  4. Reverse Proxy (Caddy, nginx, Traefik) mit TLS-Zertifikat davor.
  5. Geheimnisse (API-Tokens, Datenbank-Passwörter) in Umgebungsvariablen oder einer .env-Datei mit passenden Rechten, nie im Git-Repository.

Prozesse dauerhaft betreiben

Mit systemd (Python, Node.js, .NET)

# /etc/systemd/system/meine-app.service
[Unit]
Description=Meine App
After=network.target

[Service]
User=app
WorkingDirectory=/srv/meine-app
EnvironmentFile=/srv/meine-app/.env
ExecStart=/srv/meine-app/.venv/bin/gunicorn projekt.wsgi:application --bind 127.0.0.1:8000
Restart=always

[Install]
WantedBy=multi-user.target

Aktivieren mit sudo systemctl enable --now meine-app. Für Node.js ersetzen Sie ExecStart durch den Start Ihrer App, zum Beispiel /usr/bin/node server.js.

Mit PM2 (Node.js)

PM2 ist ein verbreiteter Prozessmanager für Node.js: pm2 start server.js, danach pm2 startup und pm2 save, damit die App den Neustart des Servers übersteht.

Mit Docker

Wenn Ihre App ohnehin als Container vorliegt, starten Sie sie mit restart: unless-stopped in einer Compose-Datei. Mehr: Docker Hosting.

Discord- und Telegram-Bots

  • Kein Webserver nötig, wenn der Bot sich selbst mit Discord oder Telegram verbindet (zum Beispiel Long Polling bei Telegram oder die Gateway-Verbindung bei Discord). Ein Dienst mit Restart=always reicht.
  • Webhooks (zum Beispiel bei Telegram) brauchen dagegen eine öffentlich erreichbare HTTPS-Adresse → Reverse Proxy.
  • Token schützen: Ein geleakter Bot-Token gibt Fremden die Kontrolle über Ihren Bot. Token nur in Umgebungsvariablen speichern.
  • Ressourcen: Einfache Bots brauchen wenig RAM; Bots mit KI-Funktionen, Bildverarbeitung oder Datenbanken entsprechend mehr.

Updates und Deployments

  • Abhängigkeiten pinnen (requirements.txt bzw. poetry.lock, package-lock.json, composer.lock).
  • Deployments reproduzierbar machen: git pull, Abhängigkeiten installieren, Migrationen ausführen, Dienst neu starten. Gern als Skript.
  • Betriebssystem-Updates regelmäßig einspielen; bei einem Managed VPS übernimmt das der Anbieter.
  • Logs prüfen: journalctl -u meine-app -f bzw. pm2 logs.

Welcher VPS?

Für Node.js-Hosting in Deutschland gilt dasselbe wie für Python-Apps: Entscheidend sind dauerhaft laufende Prozesse und genug Arbeitsspeicher, nicht die Programmiersprache.

AppStartpunkt
Einfacher Bot, kleine APIkleinster VPS
Django/Laravel-App mit Datenbank4 vCPU, 8–16 GB RAM
Mehrere Apps, Worker, Caches8 vCPU, 16 GB RAM oder mehr

Bei GB Hosting bekommen Sie dafür einen Managed VPS in Deutschland mit Root-Zugriff, Browser-Terminal und täglichen Snapshots; das Betriebssystem halten wir aktuell. Managed VPS ansehen

Häufige Fragen

Kann ich einen Discord-Bot kostenlos hosten?

Es gibt kostenlose Angebote mit Einschränkungen (Laufzeit, Ruhezustand, Ressourcen). Für einen Bot, der zuverlässig rund um die Uhr laufen soll, ist ein kleiner VPS die stabilere Lösung.

Brauche ich für Django einen eigenen Server?

Für den produktiven Betrieb mit Datenbank, Worker und eigener Domain ist ein VPS die übliche Lösung.

Wie hoste ich eine ASP.NET-Core-App unter Linux?

Mit der .NET-Runtime als systemd-Dienst hinter einem Reverse Proxy, wie oben beschrieben. Für klassische .NET-Framework-Anwendungen brauchen Sie dagegen Windows Server.

Artikel teilen:

Passende Angebote: Managed VPS

Alle Artikel im Blog