ACEvo Server Launcher
Herunterladen
? Zur Startseite

Installation

Vom Download zum ersten Server.

Wähle dein System. Installiere zuerst den offiziellen Dedicated Server über Steam. Die Startskripte liegen im entpackten ACEvo-Paket.

1. Was du vorher brauchst

Windows eignet sich für den Einstieg auf dem eigenen PC. Für einen dauerhaft laufenden Server ist der automatische Debian-Installer der kürzeste Weg. Docker setzt Erfahrung mit Containern und eine vorhandene MariaDB voraus.

WindowsEmpfohlen für den einfachsten Einstieg auf einem PC oder Windows-Server.
LinuxGeeignet für einen dauerhaft laufenden Server. Für den offiziellen Windows-Spielserver werden Wine und Xvfb benötigt.
DockerFür Nutzer, die Docker bereits kennen oder ein reproduzierbares Deployment wünschen.
VoraussetzungPflicht?Warum?
Assetto Corsa EVO Dedicated Server über SteamJaACEvo verwaltet den offiziellen Server, liefert dessen Dateien aber nicht mit.
Java 21 oder neuerJaACEvo ist eine Java-Webanwendung.
Wine + XvfbNur LinuxDamit die Windows-EXE des offiziellen Dedicated Servers ohne Desktop laufen kann.
MariaDBNeinStandardmäßig wird eine eingebettete H2-Dateidatenbank verwendet.
DockerNur Docker-VarianteFür Windows- oder Linux-ZIP-Installation nicht erforderlich.
Sicherheitsregel: Öffne ACEvo beim ersten Test nur im lokalen Netz. Leite keine Ports ins Internet weiter, bevor Admin-Passwort, Firewall, HTTPS/Reverse Proxy und Backups bewusst eingerichtet sind.

2. Schnellinstallation nach Betriebssystem

Windows nutzt das Launcher-ZIP. Auf Debian installiert das Linux-Skript ACEvo und den offiziellen Dedicated Server automatisch.

Windows: Launcher-ZIP

  1. Installiere in Steam unter Bibliothek → Tools den Assetto Corsa EVO Dedicated Server.
  2. Installiere eine Java-21-Laufzeit. Für Windows eignet sich das Temurin-21-JDK für Windows x64 als MSI. Im Installationsdialog die Option zum Hinzufügen von Java zum PATH aktiviert lassen.
  3. ACEvo Launcher-ZIP herunterladen und vollständig in einen festen Ordner entpacken, zum Beispiel C:\ACEvo.
  4. Lege vor dem ersten Start die Admin- und Datenbankkennwörter fest (Abschnitt Vollständige Windows-Installation). Starte danach im entpackten Ordner scripts\start-app-windows.cmd und öffne http://localhost:8082.

Die ZIP-Installation richtet ACEvo ein. Der offizielle Dedicated Server und Java müssen vorher installiert sein.

Linux: Debian-Webinstaller

Der automatische Weg ist für Debian vorgesehen. Öffne ein Terminal, lade das Skript herunter und führe den Block aus. Bei Kennwörtern erscheint beim Tippen kein Zeichen und kein Sternchen; tippe trotzdem und drücke Enter. Anschließend kann sudo nach deinem Linux-Kontokennwort fragen.

sudo apt update
sudo apt install -y curl
curl -fsSL https://acevo-server.com/linux/install.sh -o /tmp/acevo-install.sh
(
  set -e
  read -rp "Steam-Kontoname: " STEAM_LOGIN
  read -rp "H2-Datenbank-Benutzer: " DB_USER
  read -rsp "H2-Datenbank-Passwort: " DB_PASSWORD
  printf '\n'
  read -rsp "ACEvo-Admin-Passwort: " GUI_ADMIN_PASSWORD
  printf '\n'
  export STEAM_LOGIN DB_USER DB_PASSWORD GUI_ADMIN_PASSWORD
  export ACEVO_PORT=8082 ACEVO_HOME=/opt/acevo ACE_SERVER_HOME=/opt/ace-server
  export ACEVO_CONFIG_DIR=/etc/acevo ACEVO_SERVICE_USER=acevo
  sudo --preserve-env=STEAM_LOGIN,DB_USER,DB_PASSWORD,GUI_ADMIN_PASSWORD,ACEVO_PORT,ACEVO_HOME,ACE_SERVER_HOME,ACEVO_CONFIG_DIR,ACEVO_SERVICE_USER bash /tmp/acevo-install.sh
)

Eingaben: Steam-Kontoname, H2-Benutzer, eigenes H2-Kennwort und eigenes ACEvo-Admin-Kennwort. SteamCMD fragt Steam-Passwort und bei Bedarf Steam Guard selbst ab. Gib dein Steam-Passwort nie im Befehl ein. H2-Zugangsdaten sind keine MariaDB-Zugangsdaten und das H2-Kennwort verschlüsselt die Datenbankdatei nicht.

Vor dem Ausführen kannst du Web-Port, Installationsordner, Spielserverordner, Konfigurationsordner und Dienstbenutzer im Block ändern. Verwende absolute Linux-Pfade ohne Leerzeichen. Der Installer ergänzt Debian-Paketquellen, installiert Java, SteamCMD und Wine, lädt ACEvo und den Spielserver herunter und richtet systemd ein. Er öffnet keine Router-Ports. Nicht auf Ubuntu oder anderen Distributionen verwenden. Bei vorhandener ACEvo-Konfiguration oder vorhandenem Dienst bricht das Skript ab.

Nach erfolgreichem Lauf prüft das Skript Dienst und lokalen Webzugriff. Öffne http://localhost:8082 auf dem Server oder http://SERVER-IP:8082 aus dem lokalen Netzwerk. Ersetze SERVER-IP durch die lokale IP-Adresse. Beim ersten Admin-Login verwendest du das zuvor gewählte Kennwort. Einen Admin-Benutzernamen gibt es nicht.

Linux-Installationsskript ansehen
http://localhost:8082 auf dem Rechner selbst oder http://SERVER-IP:8082 im lokalen Netzwerk öffnen. Weitere Einstellungen stehen in den Abschnitten Windows und Linux.

3. Vollständige Windows-Installation

Steam und Dedicated Server vorbereiten

Installiere Steam und melde dich mit einem Account an, der Zugriff auf Assetto Corsa EVO besitzt. Installiere anschließend das Tool Assetto Corsa EVO Dedicated Server.

Typischer Steam-Pfad ist nur ein Beispiel. Entscheidend ist der Ordner, in dem AssettoCorsaEVOServer.exe tatsächlich liegt.

ACEvo in einen festen Ordner entpacken

Beispiel: C:\ACEvo. Vermeide für einen dauerhaften Betrieb Download- oder temporäre Ordner.

Admin-Zugang vor dem ersten Start festlegen

Erstelle im ACEvo-Ordner den Unterordner config. Öffne den Editor, kopiere die folgende Konfiguration hinein und ersetze beide Beispielkennwörter durch eigene Werte. Speichere die Datei unter C:\ACEvo\config\application.properties; wähle im Speichern-Dialog „Alle Dateien“, damit Windows nicht unbemerkt .txt anhängt. Die Datei enthält Kennwörter und darf nicht weitergegeben oder öffentlich hochgeladen werden.

server.port=8082
acevo.paths.data-dir=C:/ACEvo
spring.datasource.url=jdbc:h2:file:C:/ACEvo/data/acevo-db;MODE=MariaDB;DATABASE_TO_LOWER=TRUE;CASE_INSENSITIVE_IDENTIFIERS=TRUE
spring.datasource.username=acevo
spring.datasource.password=EIN_EIGENES_DB_KENNWORT
spring.datasource.driver-class-name=org.h2.Driver
logging.file.name=C:/ACEvo/logs/acevo-application.log
acevo.security.gui-admin-password-fallback=EIN_EIGENES_ADMIN_KENNWORT

Das Fallback wird beim ersten erfolgreichen Login als Web-Admin-Kennwort gespeichert. Die Datei enthält Geheimnisse. Der Login fragt nur ein Kennwort ab, keinen Benutzernamen.

Erster Start

Doppelklicke scripts\start-app-windows.cmd. Falls Windows eine Firewall-Abfrage zeigt, erlaube zunächst nur private Netzwerke.

Öffne danach http://localhost:8082.

Welche Werte musst du ändern?

WertEingabeHinweis
server.portNormalerweise 8082Nur ändern, wenn Port 8082 bereits belegt ist.
acevo.paths.data-dirSchreibbarer Ordner, z. B. C:/ACEvoVorwärtsschrägstriche vermeiden Escape-Probleme.
spring.datasource.passwordEigenes lokales PasswortKein öffentlich bekanntes Beispielpasswort übernehmen.
Dedicated-Server-PfadIn der ACEvo-Oberfläche den Ordner mit AssettoCorsaEVOServer.exe wählenNicht die EXE selbst, sondern den passenden Ordner auswählen.

4. Linux-Installation und Admin-Vorkonfiguration

Auf Debian ist der Webinstaller der empfohlene Installationsweg. Er richtet ACEvo und den offiziellen Dedicated Server ein. Die Serverdatei ist eine Windows-EXE; Wine und Xvfb führen sie auf Linux ohne Desktop aus.

Systemvoraussetzung: Debian, Internetzugang und ein Benutzer, der sudo verwenden darf. Führe dieses Skript nicht auf Ubuntu oder einer anderen Distribution aus. Es ergänzt ausdrücklich Debian-Paketquellen.

Werte vor der Installation

WertPflichtStandard und Zweck
STEAM_LOGINJaSteam-Kontoname mit Zugriff auf den offiziellen Dedicated Server. Steam-Passwort und Steam Guard gibst du direkt bei SteamCMD ein.
DB_USERJaBenutzer der lokalen H2-Dateidatenbank, zum Beispiel acevo. Das ist kein MariaDB-Konto.
DB_PASSWORDJaEigenes Kennwort für den H2-Datenbankzugang. Es verschlüsselt nicht automatisch die Datenbankdatei auf dem Datenträger.
GUI_ADMIN_PASSWORDJaEigenes Kennwort für den ersten ACEvo-Web-Admin-Login. Ein Admin-Benutzername wird nicht verwendet.
ACEVO_PORTNeinWeb-Port, Standard 8082.
ACEVO_HOMENeinApp-, Daten- und Logordner, Standard /opt/acevo.
ACE_SERVER_HOMENeinSpielserverordner, Standard /opt/ace-server.
ACEVO_CONFIG_DIRNeinGeschützter Konfigurationsordner, Standard /etc/acevo.
ACEVO_SERVICE_USERNeinLinux-Systemkonto, unter dem ACEvo läuft; Standard acevo.
DOWNLOAD_URLNeinDownload-Adresse der ACEvo-JAR-Datei. Den offiziellen Standardwert beibehalten.

Du kannst die optionalen Pfad-, Port- und Benutzerwerte im Schnellinstallationsblock anpassen. Verwende absolute Pfade ohne Leerzeichen. Das Skript speichert Datenbank- und Admin-Kennwort in /etc/acevo/install.env mit eingeschränkten Rechten; der systemd-Dienst liest sie ein.

Was das Skript automatisch erledigt

  1. Es ergänzt Debian-Paketquellen und installiert Java 21, SteamCMD, Wine, Xvfb und Hilfsprogramme.
  2. SteamCMD lädt mit deinem Steam-Konto den offiziellen Dedicated Server herunter.
  3. Das Skript erstellt einen eigenen Linux-Dienstbenutzer, die Programm-, Konfigurations-, Daten- und Logordner sowie den Wine-Prefix.
  4. Es lädt die ACEvo-JAR-Datei von der offiziellen Website und erstellt eine externe Konfiguration mit Port, H2-Datenbank, Spielserverpfad und Admin-Fallback.
  5. Es richtet den systemd-Dienst ein, aktiviert den automatischen Start und startet ACEvo.
  6. Zum Schluss prüft es Spielserverdateien und den lokalen Web-Port.

Es richtet keine MariaDB ein, öffnet keine Firewall- oder Router-Ports und konfiguriert keine Spielserverinstanz. Eine vorhandene ACEvo-Konfiguration oder ein vorhandener Dienst lässt den Installer aus Sicherheitsgründen abbrechen. Sichere bei einer bestehenden Installation zuerst /opt/acevo/data und /etc/acevo.

Installation prüfen und Fehler finden

Das Terminal sollte den Dienst als aktiv melden und eine HTTP-Antwort zurückgeben. Diese Befehle kannst du jederzeit erneut ausführen:

sudo systemctl status acevo --no-pager
sudo journalctl -u acevo -n 100 --no-pager
curl -I http://127.0.0.1:8082/

Ersetze 8082, falls du einen anderen Web-Port gewählt hast. Bei einem Fehler zuerst die Meldungen im Dienstprotokoll lesen. Häufige Ursachen sind fehlender Steam-Zugriff, ein falsches Steam Guard-Verfahren, belegte Ports oder zu wenig freier Speicher.

Admin- und Spielserverdaten nach dem Start

Melde dich mit dem zuvor festgelegten ACEvo-Admin-Kennwort an. Ändere es nach Möglichkeit in der ACEvo-Konfiguration. Wenn du das externe Fallback nicht dauerhaft akzeptieren willst, entferne die Zeile acevo.security.gui-admin-password-fallback aus /etc/acevo/application.properties und starte den Dienst neu. Spielservername, Spielserver-Admin-Kennwort, Strecke und Rennsessions stellst du später pro Instanz in ACEvo ein; der Linux-Installer übernimmt diese Werte nicht.

Wenn du kein Debian verwendest

Starte den Webinstaller nicht. Der Launcher-ZIP enthält das ACEvo-Programm und Beispielkonfigurationen, richtet aber SteamCMD, Wine, Berechtigungen und einen Systemdienst nicht automatisch ein. Für andere Linux-Distributionen muss ein Administrator die passenden Pakete und den systemd-Start selbst einrichten.

5. Docker-Installation

Wichtig: Die untersuchte Quellcode-ZIP enthält keine Compose- oder Docker-Dateien. Die aktuelle Website beschreibt dafür ein separates Docker-Paket. Verwende diesen Abschnitt nur zusammen mit dem veröffentlichten Docker-Release, das compose.yaml, compose.local-mariadb.yaml, Dockerfile.local und die Beispielkonfigurationen enthält.

Das ZIP enthält die vorgebaute Datei acevo-server.jar im Hauptordner. Die Docker-Datei erwartet sie unter target/acevo-server-1.0.0-SNAPSHOT.jar. Kopiere sie vor dem Start dorthin. In PowerShell:

New-Item -ItemType Directory -Force target
Copy-Item acevo-server.jar target/acevo-server-1.0.0-SNAPSHOT.jar

In Bash verwendest du mkdir -p target und cp acevo-server.jar target/acevo-server-1.0.0-SNAPSHOT.jar. Das Docker-ZIP enthält kein Maven-Projekt. Verwende auf Windows scripts/docker-up.ps1 -NoBuild oder starte Docker Compose direkt mit docker compose up -d --build.

Docker-Paket entpacken

Prüfe, ob mindestens diese Dateien vorhanden sind:

compose.yaml
compose.local-mariadb.yaml
Dockerfile.local
config/application-docker.properties.sample
config/acevo-docker.env.sample
config/acevo-local-mariadb.env.sample

Beispieldateien kopieren

cp config/application-docker.properties.sample config/application-docker.properties
cp config/acevo-docker.env.sample config/acevo-docker.env
cp config/acevo-local-mariadb.env.sample config/acevo-local-mariadb.env

Alle Werte mit CHANGE_ME ersetzen.

Dedicated-Server-Ordner mounten

Die Datei compose.local-mariadb.yaml enthält einen Beispielpfad aus einer Entwicklerinstallation. Ersetze ihn durch den tatsächlichen Host-Ordner mit AssettoCorsaEVOServer.exe. Das Docker-Paket startet nur die Web-App und richtet den Dedicated Server nicht ein.

Container starten

docker compose -f compose.yaml -f compose.local-mariadb.yaml -p acevo_local up -d --build

Prüfung: docker compose -p acevo_local ps zeigt laufende Container. Öffne anschließend http://localhost:8082.

Erforderliche Eingaben

WertBedeutung
MariaDB-DatenbanknameZum Beispiel acevo; muss in App- und DB-Konfiguration gleich sein.
MariaDB-BenutzerEigener Benutzer, nicht blind root verwenden.
MariaDB-PasswortLanges, einmaliges Passwort; in beiden Konfigurationen identisch.
Admin-PasswortEigenes Passwort für den ACEvo-Adminzugang.
Host-Pfad Dedicated ServerAbsoluter Pfad zum Ordner mit AssettoCorsaEVOServer.exe.
Web-PortStandardmäßig 8082, sofern nicht anders gemappt.

6. Den ersten Server in ACEvo anlegen

Adminzugang absichern

Der Web-Admin verwendet nur ein Kennwort. Du kannst es in der ACEvo-Konfiguration ändern. Ein gesetztes externes Fallback bleibt zusätzlich gültig: Entferne es erst nach dem Speichern eines neuen Kennworts und starte ACEvo danach neu.

Ändere ein vorhandenes Standard- oder Fallback-Passwort sofort. Verwende kein Passwort aus einer Beispielkonfiguration.

Dedicated-Server-Ordner auswählen

Wähle den Ordner, in dem AssettoCorsaEVOServer.exe, cars.json, events_practice.json und events_race_weekend.json liegen.

Ports eintragen

Für die erste Instanz sind in der Vorlage folgende Bereiche vorgesehen:

ACE TCP: 9700
ACE UDP: 9700
ACE HTTP: 8091
ACEvo Web UI: 8082

Bei jeder weiteren Instanz müssen die Spielserver-Ports eindeutig sein, z. B. 9701/9701/8092.

Der ACEvo-Web-Port 8082 ist davon getrennt. Der Installer öffnet weder Firewall noch Router. Für öffentlichen Spielbetrieb gib nur die in ACEvo angezeigten Spielserver-Ports samt TCP- oder UDP-Protokoll frei. Leite den Web-Port nicht direkt ins Internet weiter; verwende HTTPS mit Reverse Proxy.

Setup auswählen

Strecke, Modus, Sessions, Fahrzeuge, Spielerzahl und Wetter konfigurieren. Keine Fahrzeugauswahl bedeutet laut integrierter Hilfe: alle Fahrzeuge sind erlaubt.

Starten und prüfen

Starte die Instanz in ACEvo und kontrolliere Status und Log.

Linux-Prüfung: ss -tulpn | grep -E "9700|8091"

7. Häufige Probleme

Die Website öffnet sich nicht

Prüfe die Startkonsole auf Fehler und ob der Port stimmt. Standard ist hier konsequent 8082. Teste http://localhost:8082.

„java“ wurde nicht gefunden

Java 21 ist nicht installiert oder nicht im PATH. Starte nach der Installation ein neues Terminal und prüfe java -version.

Der Dedicated Server startet nicht

Prüfe den Ordner und die Dateien. Unter Linux zusätzlich Wine, Xvfb, Rechte und den ACEvo-Logordner.

Port bereits belegt

Ändere entweder server.port für ACEvo oder die Ports der betroffenen Spielserver-Instanz. Jede Instanz benötigt eindeutige Ports.

Server ist lokal offen, aber nicht im Spiel sichtbar

Wenn TCP/UDP lokal lauschen, kann die Ursache außerhalb von ACEvo liegen, etwa Firewall, Routerfreigabe oder Verbindung zum Backend des Spiels. Öffne Ports nicht pauschal, sondern nur gezielt.

8. Nach der Installation

Stoppe ACEvo vor dem Kopieren der H2-Dateidatenbank. Sichere Daten und Konfiguration getrennt:

  • Windows: den Ordner aus acevo.paths.data-dir und config\application.properties.
  • Debian: /opt/acevo/data, /etc/acevo/application.properties und die vertrauliche Datei /etc/acevo/install.env.
  • Docker: den persistenten Datenordner und die echten Konfigurationsdateien. Entferne keine Datenbank-Volumes.
BackupSichere Datenordner, Konfiguration und – bei MariaDB – die Datenbank regelmäßig.
UpdatesVor Updates sichern, Release-Hinweise lesen und Konfigurationsänderungen prüfen.
Öffentlicher BetriebHTTPS, Reverse Proxy, Firewall, starke Passwörter und eine passende Datenschutzerklärung einrichten.

Wenn etwas nicht startet

Prüfe Java-Version, Startprotokoll, Serverpfad und den konfigurierten Port. Bei einem belegten Port ändere server.port und verwende denselben Port im Browser. Die eingebettete H2-Datenbank reicht zum Einstieg.