Files
2026-06-21 13:04:37 +02:00

126 lines
3.3 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 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
├── cfg/
│ └── server.cfg
├── Dockerfile
├── addons/
├── gamemodes/
├── persistent/
│ ├── cfg/
│ ├── data/
│ ├── logs/
│ ├── cache/
│ ├── steamapps/
│ └── steam_cache/
└── Steam/
```
Verzeichnisse anlegen:
```bash
mkdir -p cfg
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 |
Zusatzdatei im Repo:
- `cfg/server.cfg` ist die versionierte TTT-Server-Konfiguration.
- Vor dem Start sollte sie nach `/opt/gmod/persistent/cfg/server.cfg` synchronisiert werden, wenn dieser Mount aktiv bleibt.
## 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 "was gemacht wurde"
git branch -M main
git remote add origin git@10.1.1.4:GMOD/GMOD.git
git push -u origin main
```