openRA Server Docker container
Beschreibung:
Drei OpenRA-Server in Docker für Red Alert, Command & Conquer und Dune 2000.
Schnellstart
openra.envanpassen (Servername, Passwort, etc.)- Server starten:
docker compose up -d
Ports
| Spiel | Port |
|---|---|
| Red Alert | 1234 |
| Command & Conquer | 1235 |
| Dune 2000 | 1236 |
Alle Ports müssen in der Firewall für TCP und UDP freigegeben sein.
Konfiguration
Alle Einstellungen in openra.env:
| Variable | Beschreibung | Default |
|---|---|---|
OPENRA_SERVER_NAME |
Name in der Serverliste | HackerSoft OpenRA |
OPENRA_PASSWORD |
Serverpasswort (leer = öffentlich) | - |
OPENRA_MAX_PLAYERS |
Max. Spieler pro Server | 8 |
OPENRA_SINGLEPLAYER |
Alleine gegen Bots spielen | False |
OPENRA_PORT_RA |
Port für Red Alert | 1234 |
OPENRA_PORT_CNC |
Port für C&C | 1235 |
OPENRA_PORT_D2K |
Port für Dune 2000 | 1236 |
Befehle
# Starten
docker compose up -d
# Stoppen
docker compose down
# Logs anzeigen
docker compose logs -f
# Einzelnen Server neustarten
docker compose restart openra-ra
Einzelne Spiele deaktivieren
In docker-compose.yml den entsprechenden Service auskommentieren oder löschen.
Die Dateien:
docker-compose.yml
services:
openra-ra:
image: rmoriz/openra
env_file:
- openra.env
container_name: openra-red-alert
restart: unless-stopped
ports:
- "${OPENRA_PORT_RA:-1234}:1234/tcp"
- "${OPENRA_PORT_RA:-1234}:1234/udp"
environment:
- Name=${OPENRA_SERVER_NAME:-HackerSoft OpenRA} - Red Alert
- Mod=ra
- ListenPort=1234
- ExternalPort=${OPENRA_PORT_RA:-1234}
- Password=${OPENRA_PASSWORD:-}
- EnableSingleplayer=${OPENRA_SINGLEPLAYER:-False}
- MaxPlayers=${OPENRA_MAX_PLAYERS:-8}
openra-cnc:
image: rmoriz/openra
env_file:
- openra..env
container_name: openra-command-conquer
restart: unless-stopped
ports:
- "${OPENRA_PORT_CNC:-1235}:1234/tcp"
- "${OPENRA_PORT_CNC:-1235}:1234/udp"
environment:
- Name=${OPENRA_SERVER_NAME:-HackerSoft OpenRA} - C&C
- Mod=cnc
- ListenPort=1234
- ExternalPort=${OPENRA_PORT_CNC:-1235}
- Password=${OPENRA_PASSWORD:-}
- EnableSingleplayer=${OPENRA_SINGLEPLAYER:-False}
- MaxPlayers=${OPENRA_MAX_PLAYERS:-8}
openra-d2k:
image: rmoriz/openra
env_file:
- openra.env
container_name: openra-dune2000
restart: unless-stopped
ports:
- "${OPENRA_PORT_D2K:-1236}:1234/tcp"
- "${OPENRA_PORT_D2K:-1236}:1234/udp"
environment:
- Name=${OPENRA_SERVER_NAME:-HackerSoft OpenRA} - Dune 2000
- Mod=d2k
- ListenPort=1234
- ExternalPort=${OPENRA_PORT_D2K:-1236}
- Password=${OPENRA_PASSWORD:-}
- EnableSingleplayer=${OPENRA_SINGLEPLAYER:-False}
- MaxPlayers=${OPENRA_MAX_PLAYERS:-8}
die .env Datei:
# OpenRA Server Konfiguration
# ============================
# Basis-Name des Servers (Spielname wird automatisch angehängt)
OPENRA_SERVER_NAME=HackerSoft OpenRA
# Passwort für alle Server (leer = öffentlich)
OPENRA_PASSWORD=
# Maximale Spieleranzahl pro Server
OPENRA_MAX_PLAYERS=8
# Singleplayer erlauben (True/False)
# Bei True kann einer alleine gegen Bots spielen
OPENRA_SINGLEPLAYER=False
# Ports (TCP + UDP müssen offen sein)
OPENRA_PORT_RA=1234
OPENRA_PORT_CNC=1235
OPENRA_PORT_D2K=1236