Counter-Strike-Server einfach selbst hosten? Mit Docker und Docker-Compose kannst du in wenigen Minuten deinen eigenen CS:GO-Server starten – ohne komplizierte Installation oder Abhängigkeiten.
Warum Docker für CS:GO?
- Schnelle Einrichtung – kein manuelles SteamCMD oder Paketchaos.
- Isolation – dein System bleibt sauber.
- Einheitliche Umgebungen – perfekt für Entwickler und Clans.
- Einfache Wartung – Update = neues Image ziehen.
Voraussetzungen
- Ubuntu 22.04 oder Linux Mint 21+
- Docker & Docker-Compose (siehe unten)
- Mind. 4 GB RAM empfohlen
- Ports 27015 (UDP/TCP) offen
Docker & Docker-Compose installieren
Eine Anleitung, wie Du Docker und Docker Compose unter ubuntu / Linux Mint installieren kannst, findest Du hier:
https://www.gugeli.de/2025/08/21/docker-unter-linux-mint-und-ubuntu-installieren/
Projektverzeichnis anlegen
mkdir -p ~/csgo-server
cd ~/csgo-server
docker-compose.yml
erstellen
Wir verwenden das bewährte Image cm2network/csgo
, das auf SteamCMD basiert und regelmäßig aktualisiert wird.
1️⃣ Datei mit Nano öffnen
Erstelle eine neue Datei mit dem Texteditor nano:
nano docker-compose.yml
Dadurch öffnet sich ein einfacher Texteditor im Terminal. Du kannst nun den folgenden Inhalt einfügen.
version: "3.8"
services:
csgo:
image: cm2network/csgo
container_name: csgo-server
ports:
- "27015:27015/udp"
- "27015:27015/tcp"
environment:
SRCDS_TOKEN: "STEAM_GAME_SERVER_LOGIN_TOKEN"
SRCDS_RCONPW: "MeinSicheresPasswort"
SRCDS_PW: ""
SRCDS_PORT: 27015
SRCDS_TICKRATE: 128
SRCDS_MAXPLAYERS: 12
SRCDS_STARTMAP: "de_dust2"
SRCDS_REGION: 3
SRCDS_MAPGROUP: "mg_active"
SRCDS_GAMETYPE: 0
SRCDS_GAMEMODE: 1
SRCDS_HOSTNAME: "Docker CS:GO Server"
volumes:
- ./csgo-data:/home/steam/csgo-dedicated
restart: unless-stopped
2️⃣ Datei speichern und schließen
- Drücke CTRL + O → Enter, um zu speichern.
- Drücke CTRL + X, um Nano zu beenden.
Wichtig: Erstelle vorher unter Steam Game Server Management deinen SRCDS_TOKEN
.
Erklärung der Parameter
services:
– Definiert, welche Container gestartet werden (hier: csgo).image:
– Das verwendete Docker-Image (cm2network/csgo) enthält bereits SteamCMD und den CS:GO-Server.container_name:
– Gibt dem Container einen festen Namen, z. B. csgo-server.ports:
– Öffnet die benötigten Netzwerkports (UDP & TCP auf 27015) für den Serverzugang.environment:
– Legt Umgebungsvariablen fest:SRCDS_TOKEN
– Steam Game Server Login Token (erforderlich).SRCDS_RCONPW
– Passwort für den Remote-Admin-Zugang (RCON).SRCDS_PORT
– Port des Servers (Standard: 27015).SRCDS_TICKRATE
– Tickrate, meist 64 oder 128.SRCDS_MAXPLAYERS
– Anzahl der erlaubten Spieler.SRCDS_STARTMAP
– Startmap, z. B.de_dust2
.SRCDS_REGION
– Regions-ID für Matchmaking (z. B. 3 = Europa).SRCDS_MAPGROUP
– Mapgruppe für Rotation (z. B.mg_active
).SRCDS_GAMETYPE
/SRCDS_GAMEMODE
– Spielmodus (z. B. Competitive oder Casual).SRCDS_HOSTNAME
– Servername, der in der Serverliste angezeigt wird.
volumes:
– Bindet den lokalen Ordner./csgo-data
in den Container, um Daten und Konfigurationen dauerhaft zu speichern.restart:
– Stellt sicher, dass der Server bei einem Absturz oder Neustart automatisch wieder hochfährt.
Server starten
Mit folgendem Befehl startest du den Server im Hintergrund:
docker compose up -d
Logs anzeigen:
docker compose logs -f
Ports öffnen (27015 UDP/TCP)
Damit andere Spieler auf deinen CS:GO-Server zugreifen können, müssen die Ports 27015/TCP und 27015/UDP offen sein.
1️⃣ Ubuntu-Firewall (UFW) konfigurieren
Wenn du ufw
nutzt, öffne die Ports mit:
sudo ufw allow 27015/tcp
sudo ufw allow 27015/udp
sudo ufw reload
Den Status kannst du prüfen mit:
sudo ufw status
2️⃣ Router-Portfreigabe (für öffentliche Server)
Falls du hinter einem Heimrouter spielst, leite die Ports an die lokale IP deines Servers weiter.
Beispiel: 192.168.178.50 → Port 27015 (UDP & TCP)
.
3️⃣ Verbindung testen
Starte den Server und teste die Verbindung z. B. mit:
telnet <SERVER-IP> 27015
oder in CS:GO direkt mit connect <IP>:27015
.
Server konfigurieren
Alle Konfigurationsdateien (z. B. server.cfg
, autoexec.cfg
) liegen im Volume ./csgo-data
.
Du kannst sie direkt anpassen und den Container neu starten:
docker compose restart
Verwaltung & Updates
- Stoppen:
docker compose down
- Neu starten:
docker compose restart
- Server updaten:
docker compose pull docker compose up -d
- Backup:
tar -czf csgo-backup-$(date +%F).tar.gz csgo-data
FAQ
Wie bekomme ich den Steam Login Token?
Über Steam Game Server Management. Wähle CS:GO (730
) aus und generiere einen Token.
Wie kann ich Freunde einladen?
Nutze die öffentliche IP deines Servers und den Port (z. B. my-server-ip:27015
). Stelle sicher, dass UDP/TCP-Port 27015 offen ist.
Kann ich Mods oder Workshop-Maps laden?
Ja, einfach Workshop-Collection-ID und AuthKey in die Umgebungsvariablen SRCDS_WORKSHOP_AUTHKEY
und SRCDS_WORKSHOP_COLLECTION
eintragen.