diff --git a/README.md b/README.md index e69de29..3ff8d88 100644 --- a/README.md +++ b/README.md @@ -0,0 +1,118 @@ +# GMOD – Garry's Mod TTT Server + +Dieses Repository enthält eine Docker-Compose-Konfiguration für einen Garry's-Mod-Server mit dem Gamemode **Trouble in Terrorist Town (TTT)**. + +Die Compose-Datei startet den Container `garrysmod-server`, baut das Image lokal aus dem Dockerfile und speichert Konfigurationen, Logs, Cache, Workshop-/Steam-Daten sowie eigene Addons dauerhaft unter `/opt/gmod`. + +## Überblick + +| Bereich | Wert | +| --------------- | ------------------------------ | +| Service | `garrysmod` | +| Container | `garrysmod-server` | +| Image | `ttt-phoenix/garrysmod:latest` | +| Gamemode | `terrortown` | +| Standard-Map | `gm_drachenschanze` | +| Server-Port | `27016` TCP/UDP | +| Restart-Policy | `unless-stopped` | +| Persistenz-Pfad | `/opt/gmod/persistent` | + +## Server starten + +```bash +docker compose -f gmod.yaml up -d --build +``` + +Logs anzeigen: + +```bash +docker compose -f gmod.yaml logs -f garrysmod +``` + +Server neustarten: + +```bash +docker compose -f gmod.yaml restart garrysmod +``` + +Server stoppen: + +```bash +docker compose -f gmod.yaml down +``` + +## Verzeichnisstruktur + +```text +/opt/gmod +├── Dockerfile +├── addons/ +├── gamemodes/ +├── persistent/ +│ ├── cfg/ +│ ├── data/ +│ ├── logs/ +│ ├── cache/ +│ ├── steamapps/ +│ └── steam_cache/ +└── Steam/ +``` + +Verzeichnisse anlegen: + +```bash +sudo mkdir -p /opt/gmod/{addons,gamemodes,Steam} +sudo mkdir -p /opt/gmod/persistent/{cfg,data,logs,cache,steamapps,steam_cache} +``` + +## Konfiguration + +| Variable | Bedeutung | +| -------------- | ------------------------------------------------- | +| `GAMEMODE` | Garry's-Mod-Gamemode, aktuell `terrortown` | +| `HOSTNAME` | Servername in der Serverliste | +| `MAP` | Startmap | +| `MAPS` | Map-Rotation / verfügbare Maps | +| `NAME` | interner Server-/Instanzname | +| `PORT` | Serverport, aktuell `27016` | +| `PRODUCTION` | Produktionsmodus, aktuell `1` | +| `WORKSHOP_IDS` | Steam-Workshop-IDs, die vom Server geladen werden | + +## Auffälligkeiten + +Der Volume-Zielpfad für Steamapps sieht wahrscheinlich nach einem Tippfehler aus: + +```yaml +/opt/gmod/persistent/steamapps:/home/gmod/server/steamappsp +``` + +Vermutlich sollte es heißen: + +```yaml +/opt/gmod/persistent/steamapps:/home/gmod/server/steamapps +``` + +Außerdem steht am Ende der Map-Liste: + +```text +ttt_krustykrab gm_drachenschanze +``` + +Falls eine kommagetrennte Liste erwartet wird, sollte daraus werden: + +```text +ttt_krustykrab, gm_drachenschanze +``` + +## Git-Upload + +```bash +git init +git add . +git commit -m "Initial commit" + +git branch -M main +git remote add origin git@10.1.1.4:GMOD/GMOD.git +git push -u origin main +``` +