Einen FiveM-Server in Docker zu betreiben gibt dir Umgebungskonsistenz, vereinfachte Backups, reproduzierbare Deployments und die Möglichkeit, mehrere isolierte Server-Instanzen…
Share
FiveM Server mit Docker betreiben: Komplette Einrichtungsanleitung
Einen FiveM-Server in Docker zu betreiben gibt dir Umgebungskonsistenz, vereinfachte Backups, reproduzierbare Deployments und die Möglichkeit, mehrere isolierte Server-Instanzen auf einem einzigen Host zu betreiben. Wenn du jemals Stunden damit verbracht hast, einen Server zu debuggen, der auf einer Maschine funktioniert aber auf einer anderen nicht, eliminiert Docker dieses Problem vollständig.
Diese Anleitung führt dich durch den kompletten Prozess: vom Erstellen deines Dockerfiles bis zum Betrieb eines produktionsreifen FiveM-Servers mit docker-compose, persistentem Speicher, txAdmin und ordentlichem Ressourcen-Management.
Voraussetzungen
Bevor du startest, stelle sicher, dass du hast:
Einen Linux VPS oder dedizierten Server (Ubuntu 22.04+ oder Debian 12+ empfohlen)
Docker Engine 24+ und Docker Compose v2 installiert
Einen Cfx.re-Account mit gültigem Server-Lizenzschlüssel
Grundlegende Vertrautheit mit der Linux-Kommandozeile
Falls Docker noch nicht installiert ist, dauert die offizielle Installation weniger als eine Minute:
curl -fsSL https://get.docker.com | sh
sudo usermod -aG docker $USER
Melde dich ab und wieder an, damit die Gruppenänderung wirksam wird. Überprüfe mit docker --version und docker compose version.
Projektstruktur
Organisiere dein FiveM-Docker-Setup mit einer sauberen Verzeichnisstruktur. Diese Trennung hält deine Konfiguration, Ressourcen und Daten übersichtlich:
Ja. txAdmin ist in den FiveM-Server-Artifacts enthalten. Gib Port 40120 in deiner docker-compose.yml frei und greife auf das txAdmin-Webpanel unter http://deine-server-ip:40120 zu. Der Einrichtungsassistent startet beim ersten Start. Mounte dein txAdmin-Datenverzeichnis als Volume, um die Konfiguration über Container-Neustarts hinweg zu erhalten.
Wie viel RAM braucht ein FiveM-Server in Docker?
Plane mit denselben Ressourcen wie bei einer Bare-Metal-Installation plus ca. 100-200 MB Overhead für die Container-Runtime. Ein 32-Slot-Server mit moderaten Scripts braucht 4-8 GB RAM für Docker. Setze Speicherlimits in der docker-compose.yml mit deploy.resources.limits.memory, um zu verhindern, dass der Container den gesamten Host-RAM verbraucht.
Kann ich mehrere FiveM-Server auf einem Host mit Docker betreiben?
Absolut — das ist einer der größten Vorteile von Docker für FiveM-Hosting. Jeder Server läuft in seinem eigenen Container mit isolierten Ports, Ressourcen und Konfigurationen. Verwende verschiedene Host-Port-Mappings (z.B. 30120, 30121, 30122) und separate Volume-Mounts für jede Server-Instanz. Docker Compose macht die Verwaltung mehrerer Server unkompliziert.
Verursacht Docker spürbare Latenz für Spieler?
Nein. Docker nutzt direkt den Netzwerk-Stack des Hosts (besonders mit network_mode: host) und fügt vernachlässigbaren Overhead hinzu. Die Containerisierungsschicht arbeitet auf OS-Ebene, nicht durch Virtualisierung. Spieler werden keinen Unterschied zu einer Bare-Metal-Installation bemerken. CPU-gebundene Operationen wie Script-Ausführung performen identisch.
Framework-Recherche in einen startklaren Script-Stack verwandeln
Nutze diesen Guide, um die Framework-Entscheidung einzugrenzen, und wechsle dann in die zentralen Angebotsseiten für verifizierte Scripts, kuratierte Bundles und einen schnelleren Server-Launch.
QBCore starter
Use a complete QBCore base when the guide points to a new server launch and you want jobs, economy, UI, and admin tooling already connected.
View QBCore template
ESX starter
Compare a full ESX server pack when you need a faster path from setup research to a working roleplay stack.
View ESX server pack
Complete server path
If the article is part of a launch plan, start with full server packs that reduce setup time and connect multiple systems faster.
Open full server packs
Kostenlose Scripts die dich interessieren könnten
Ähnliche Artikel
Installiere ein FiveM-Server-Template in 1–2 Stunden: Archiv entpacken, SQL importieren, server.cfg konfigurieren, txAdmin starten, Gameplay-Loop validieren. Vollständige 7-Schritt-Anleitung mit Troubleshooting und Customization-Checkliste.
FiveM Full Server Download: komplette Server-Packs erklärt: deutscher FiveM Guide mit Praxis-Checkliste, Setup-Hinweisen und internen Ressourcen fuer Serverbetreiber.
Einen FiveM-Server zu betreiben ist keine einfache Aufgabe. Du verwaltest gleichzeitig Spiellogik, Spielerverbindungen, Datenbankintegrität, Voice-Systeme und Community-Dynamiken.
Erstelle die Grundstruktur:
mkdir -p fivem-server/{server-data/resources,txData,backups}
cd fivem-server
Das Dockerfile
Das Dockerfile baut ein minimales Image, das die neuesten FiveM-Server-Artifacts herunterlädt und die Laufzeitumgebung einrichtet:
Das Image wiegt ca. 200-300 MB — deutlich kleiner als eine vollständige Ubuntu-Installation mit denselben Abhängigkeiten.
Docker Compose Konfiguration
Docker Compose definiert, wie dein Container läuft, einschließlich Port-Mappings, Volume-Mounts, Ressourcen-Limits und Restart-Verhalten. Hier werden die operativen Vorteile von Docker greifbar.
restart: unless-stopped stellt sicher, dass der Server nach Abstürzen oder Host-Neustarts zurückkommt, ohne Container neu zu starten, die du absichtlich gestoppt hast.
Volume-Mounts halten deine Serverdaten und txAdmin-Konfiguration außerhalb des Containers. Ein Rebuild oder Update des Images berührt deine Daten nie.
Speicher-Limits verhindern, dass ein Ressourcen-Leak oder schlecht geschriebenes Script den gesamten Host-RAM verbraucht und andere Dienste zum Absturz bringt.
Log-Rotation verhindert, dass Docker-Logs deine Festplatte über Zeit füllen — ein häufiges Problem bei langlebigen Game-Servern.
Server-Konfiguration
Erstelle deine server-data/server.cfg mit den wesentlichen Direktiven:
Ersetze dein-lizenzschlüssel-hier mit deinem tatsächlichen Cfx.re-Lizenzschlüssel. Du kannst einen auf keymaster.fivem.net generieren.
Server starten
Starte den Server mit einem einzigen Befehl:
docker compose up -d
Überwache den Startvorgang:
docker compose logs -f fivem
Du solltest sehen, wie der FiveM-Server initialisiert, Ressourcen lädt und schließlich die Server-Startmeldung anzeigt. txAdmin ist unter http://deine-server-ip:40120 erreichbar, sobald der Container läuft.
Zum geordneten Stoppen:
docker compose down
Zum Neustart nach Konfigurationsänderungen:
docker compose restart fivem
txAdmin-Einrichtung in Docker
Wenn du http://deine-server-ip:40120 zum ersten Mal aufrufst, führt txAdmin dich durch den Einrichtungsassistenten:
Erstelle deinen txAdmin-Admin-Account (getrennt von deinem Cfx.re-Account)
Verknüpfe deinen Cfx.re-Account zur Lizenzvalidierung
Wähle den Server-Datenpfad — zeige auf /server-data
Wähle dein Server-Template oder zeige auf deine bestehende server.cfg
Das txAdmin-Datenverzeichnis (/txData) ist als Volume gemountet, sodass deine Admin-Accounts, Spieler-Bans, geplante Neustarts und Backups Container-Rebuilds überstehen.
Ressourcen und Scripts hinzufügen
Installiere Scripts in dein server-data/resources/-Verzeichnis auf dem Host. Änderungen sind sofort im Container sichtbar dank des Volume-Mounts — kein Rebuild nötig.
# Beispiel: Ressource von GitHub installieren
cd server-data/resources/
git clone https://github.com/example/my-resource.git
# Dann in server.cfg eintragen
echo 'ensure my-resource' >> ../server.cfg
Starte den Server neu, um neue Ressourcen zu laden:
docker compose restart fivem
Für eine kuratierte Sammlung von FiveM-Scripts und Mods, durchstöbere unsere Free-Mods-Bibliothek oder den Premium-Shop für produktionsreife Ressourcen mit garantierter Kompatibilität.
Persistenter Speicher und Backups
Docker-Volumes stellen sicher, dass deine Daten Container-Neustarts, Updates und Rebuilds überleben. Die zwei kritischen Verzeichnisse sind:
./server-data: Deine Server-Konfiguration, Ressourcen und dateibasierte Daten
./txData: txAdmin-Konfiguration, Spieler-Datenbank, Ban-Listen und Admin-Accounts
Automatisiere Backups mit einem einfachen Cron-Job:
# In crontab eintragen (crontab -e)
0 4 * * * cd /path/to/fivem-server && tar -czf backups/backup-$(date +\%Y\%m\%d).tar.gz server-data/ txData/ --exclude='server-data/cache'
Das erstellt ein tägliches komprimiertes Backup um 4 Uhr morgens, ohne das Cache-Verzeichnis, das regeneriert werden kann. Rotiere alte Backups, um Festplatten-Füllstand zu verhindern:
# Letzte 14 Tage an Backups behalten
find /path/to/fivem-server/backups -name "backup-*.tar.gz" -mtime +14 -delete
FiveM-Server aktualisieren
Ein Dockerisierter FiveM-Server zu aktualisieren ist sauber und vorhersagbar. Deine Serverdaten bleiben unberührt — nur die Server-Artifacts ändern sich:
# Image mit neuesten Artifacts neu bauen
docker compose build --no-cache fivem
# Mit dem neuen Image neustarten
docker compose up -d fivem
Falls nach einem Update etwas kaputt geht, ist ein Rollback sofort möglich:
# Tagge dein aktuelles funktionierendes Image vor dem Update
docker tag fivem-server:latest fivem-server:backup
# Falls das Update Probleme verursacht, zurücksetzen
docker tag fivem-server:backup fivem-server:latest
docker compose up -d fivem
Diese Rollback-Fähigkeit allein macht Docker den Einrichtungsaufwand wert. Bei einer Bare-Metal-Installation bedeutet das Rückgängigmachen eines schlechten Updates manuelles Wiederherstellen von Dateien und Hoffen, dass nichts vergessen wurde.
Mehrere Server betreiben
Einer der stärksten Vorteile von Docker für FiveM-Hosting ist das Betreiben mehrerer isolierter Server-Instanzen auf einem einzigen Host. Jeder Server bekommt seinen eigenen Container, Ports und Daten:
Jeder Server ist komplett isoliert. Du kannst Scripts auf dem Test-Server testen, ohne deine Produktionsumgebung zu gefährden.
Datenbank-Integration
Die meisten FiveM-Server brauchen eine MySQL- oder MariaDB-Datenbank für Frameworks wie ESX, QBCore oder QBox. Füge sie zu deiner docker-compose.yml hinzu:
In deiner Ressourcen-Datenbankkonfiguration (z.B. oxmysql oder mysql-async) verwende db als Hostname, da Docker Compose ein internes Netzwerk erstellt, in dem Container sich gegenseitig über Servicenamen erreichen können:
set mysql_connection_string "mysql://fivem:aendere-das-auch@db:3306/fivem?charset=utf8mb4"
Produktions-Härtung
Bevor du deinen Dockerisierten FiveM-Server für Spieler freigibst, wende diese Produktions-Best-Practices an:
Firewall-Regeln
Gib nur die Ports frei, die du tatsächlich brauchst:
# FiveM Game-Traffic erlauben
sudo ufw allow 30120/tcp
sudo ufw allow 30120/udp
# txAdmin (wenn möglich auf deine IP beschränken)
sudo ufw allow from DEINE_IP to any port 40120
# Alles andere blockieren
sudo ufw enable
Health Checks
Füge einen Health Check zu deiner docker-compose.yml hinzu, damit Docker einen hängengebliebenen Server erkennen und neu starten kann:
Richte Alerts ein, wenn Speicher- oder CPU-Nutzung Schwellenwerte überschreitet, um Probleme zu erkennen, bevor Spieler sie bemerken.
Fehlerbehebung häufiger Probleme
Container beendet sich sofort nach dem Start:
Prüfe die Logs mit docker compose logs fivem. Häufige Ursachen: ungültiger Lizenzschlüssel, fehlende server.cfg oder Port-Konflikte. Stelle sicher, dass dein Lizenzschlüssel korrekt ist und kein anderer Prozess Port 30120 verwendet.
Keine Verbindung zum Server möglich:
Stelle sicher, dass Ports 30120/tcp und 30120/udp in deiner Firewall offen und korrekt in der docker-compose.yml gemappt sind. Teste mit docker compose port fivem 30120, um das Mapping zu verifizieren.
txAdmin nicht erreichbar:
Überprüfe, dass Port 40120 freigegeben und nicht von einer Firewall blockiert wird. Stelle sicher, dass die TXADMIN_PORT-Umgebungsvariable mit dem freigegebenen Port übereinstimmt.
Ressourcen laden nicht nach dem Hinzufügen:
Volume-Mounts synchronisieren automatisch, aber FiveM braucht einen Neustart, um neue Ressourcen zu erkennen. Führe docker compose restart fivem aus und stelle sicher, dass die Ressource in der server.cfg mit ensure aufgelistet ist.
Datenbankverbindung abgelehnt:
Wenn du Docker Compose Networking nutzt, verwende den Servicenamen (z.B. db) als Hostname, nicht localhost oder 127.0.0.1. Der Datenbank-Container muss laufen und gesund sein, bevor FiveM startet — depends_on regelt die Startreihenfolge.
Docker verwandelt FiveM-Server-Management von manueller Systemadministration in reproduzierbare, versionskontrollierte Infrastruktur. Jede Konfigurationsänderung wird nachverfolgt, jedes Update ist umkehrbar und jedes Backup ist vorhersagbar. Diese betriebliche Disziplin unterscheidet Server, die bestehen, von Servern, die ausbrennen.