Ein Terraria-Server lässt sich mit Docker und Docker Compose schnell und zuverlässig aufsetzen. In dieser Anleitung zeige ich dir Schritt für Schritt, wie du unter Ubuntu oder Linux Mint einen Terraria-Server betreibst.
Inhaltsverzeichnis
- Warum Docker für Terraria?
- Voraussetzungen
- Systemvorbereitung
- Docker & Docker Compose installieren
- Projektstruktur anlegen
- docker-compose.yml erstellen
- Server starten
- Mit dem Terraria-Server verbinden
- Verwaltung, Updates & Backups
- Erweiterungen & Tipps
- FAQ
1. Warum Docker für Terraria?
- Einfachheit: Ein
docker compose upreicht, um alles zu starten. - Isolation: Der Server läuft im Container, dein Host bleibt sauber.
- Portabilität: Setup leicht auf andere Server übertragbar.
- Updates & Wartung: Versionswechsel per Image-Pull möglich.
- Sicherheit: Rechte einschränken, Netzwerktrennung, reproduzierbare Umgebungen.
2. Voraussetzungen
- Ubuntu (z. B. 22.04/24.04) oder Linux Mint (Ubuntu-basiert)
- Adminrechte (
sudo) - Terminal-Grundkenntnisse
- Einige GB freier Speicherplatz (für Welten/Backups)
- Portfreigaben im Router/Firewall
3. Systemvorbereitung
sudo apt update && sudo apt upgrade -y
(Optional) Firewall-Regeln für den Standardport 7777 setzen:
sudo ufw allow 7777/udp
sudo ufw allow 7777/tcp
4. Docker & Docker Compose installieren
Wenn Docker/Compose noch nicht installiert ist:
Hier findest Du eine Anleitung.
5. Projektstruktur anlegen
mkdir -p ~/terraria-server
cd ~/terraria-server
6. docker-compose.yml erstellen
Erstelle eine Datei docker-compose.yml mit folgendem Inhalt (Beispiel-Image):
nano docker-compose.yml
Trage folgendes ein:
version: "3.8"
services:
terraria:
image: rymdm/terraria-server:latest
container_name: terraria_server
ports:
- "7777:7777/tcp"
- "7777:7777/udp"
environment:
- WORLD_NAME=MyWorld
- WORLD_SIZE=Medium
- MAX_PLAYERS=8
- SEED=123456
- PASSWORD=meinPasswort # optional
volumes:
- ./data:/terraria
restart: unless-stopped
Speichere die Datei in nano mit:
STRG + O # Datei schreiben (O = Output)
ENTER # Speichern bestätigen
STRG + X # Editor verlassen
Wichtige Optionen erklärt
- image: Docker-Image des Terraria-Servers (hier Beispiel
rymdm/terraria-server). - ports: TCP/UDP 7777 nach außen durchreichen.
- environment: Weltname, Größe, Seed, max. Spieler, Passwort etc.
- volumes:
./dataspeichert Welt & Konfigurationen persistent auf dem Host. - restart: Startet Container nach Reboot/Crash automatisch.
Hinweis: Je nach Image können Umgebungsvariablen/Verzeichnisse abweichen – prüfe die Dokumentation des gewählten Images.
7. Server starten
# Im Ordner mit deiner docker-compose.yml
docker compose up -d
# (Ältere Syntax:)
# docker-compose up -d
Status & Logs:
docker ps
docker compose logs -f
8. Mit dem Terraria-Server verbinden
- Terraria starten → Multiplayer → „Server beitreten“
- Adresse:
localhost:7777(gleicher Rechner)DEINE-SERVER-IP:7777(von außen – Portweiterleitung im Router nötig)
- Passwort eingeben (falls gesetzt)
9. Verwaltung, Updates & Backups
Start / Stopp / Neustart
docker compose start
docker compose stop
docker compose restart
docker compose down # Container stoppen & entfernen (Daten im Volume bleiben)
Logs ansehen
docker compose logs -f
Server/Image aktualisieren
docker compose pull
docker compose up -d
Die Welt bleibt erhalten, solange du das Volume ./data beibehältst.
Backups
tar -czf terraria-backup-$(date +%F).tar.gz data
Backups extern sichern (Cloud/externes Laufwerk).
10. Erweiterungen & Tipps
- Mods / TShock / Plugins: Viele Images unterstützen TShock oder modded Terraria-Server (achte auf Tags/Docs).
- Automatische Updates: Z. B. mit Watchtower (als eigener Container).
- Mehrere Welten/Instanzen: Weitere Services in derselben Compose mit unterschiedlichen Ports.
- Reverse Proxy & Domain: Mit Traefik mehrere Game-Server sauber verwalten.
- Monitoring/Status: z. B. netdata oder Grafana/Prometheus.
11. FAQ
| Frage | Antwort |
|---|---|
| Welches Image soll ich verwenden? | rymdm/terraria-server ist ein Beispiel. Alternativen aus der Docker-Hub-Community sind je nach Bedarf möglich. Lies die jeweilige Doku. |
| Wo liegen die Serverdaten? | Im Host-Ordner ./data, gemountet in den Container. |
| Wie ändere ich Einstellungen (Passwort, Weltgröße …)? | Umgebungsvariablen in der docker-compose.yml anpassen und neu starten. |
| „Permission denied“ auf dem Host-Volume? | Sorge für Schreibrechte auf ./data (z. B. sudo chown -R $USER:$USER data). |
| Kann ich Terraria mit Mods/Plugins betreiben? | Ja – je nach Image. Prüfe, welche Mods/Plugins unterstützt werden (z. B. TShock). |

