Konfigurationsdatei-Referenz
Detaillierte Referenz für die wichtigsten FiveNet-Konfigurationsoptionen.
Diese Seite ist eine Konfigurationsreferenz und keine Schritt-für-Schritt-Installationsanleitung. Für die empfohlene Reihenfolge beginnen Sie mit FiveNet konfigurieren.Die Seite orientiert sich an
config.example.yaml und fasst die Einstellungen zusammen, die die meisten Installationen prüfen müssen.Speicherort der Konfigurationsdatei
Standardmäßig sucht FiveNet in dieser Reihenfolge nach einer config.yaml:
.- Das aktuelle Arbeitsverzeichnis/config- Häufig bei containerisierten Installationen verwendet
Verwenden Sie die Beispielkonfigurationsdatei als Quelle für Kommentare, Standardwerte und alle verfügbaren Optionen.
Erforderliche Konfigurationsoptionen
Die wichtigsten Optionen, damit FiveNet korrekt funktioniert:
http.publicURL- Öffentlich zugängliche URL Ihrer FiveNet-Instanz.http.sessions.cookieSecret- Geheimnis zur Verwaltung von Benutzer-Cookies (sollte einmalig während der Installation zufällig generiert werden, mindestens 24 Zeichen lang).http.sessions.domain- Öffentlich zugänglicher Domain-/Subdomain-Name Ihrer FiveNet-Instanz.database.dsn- Datenbank-Verbindungszeichenfolge.nats.url- NATS-Nachrichtenwarteschlangen-URL (mit enthaltenen Anmeldeinformationen).jwt.secret- Geheimnis zur Erstellung von Benutzertokens (sollte einmalig während der Installation zufällig generiert werden, mindestens 24 Zeichen lang).auth.configAdminGroups- Liste von Gruppen, die in FiveNet Config-Admin-Zugriff erhalten sollen.sync.enabled+sync.apiTokens- Sync API aktivieren und einen Token vergeben. Die API ist benötigt für die Gameserver Plugins und die FiveNet DBSync Komponente.
Für detaillierte Informationen zu diesen Optionen lesen Sie den Konfigurationsreferenzabschnitt unten.
Grundlegende Einstellungen
mode
string
Steuert, ob FiveNet im Modus
debug oder release läuft.logLevel
string
Standard-Loglevel der Anwendung.
log
logToStderr
boolean
Schreibt Logs nach
stderr statt nach stdout.logToFile
boolean
Schreibt Logs in eine Datei statt nach
stdout.file
path
string
Pfad zur Logdatei.
rotation
maxSize
number
Maximale Logdateigröße in Megabyte vor einer Rotation.
maxBackups
number
Maximale Anzahl an rotierenden Logdateien, die aufbewahrt werden.
maxAge
number
Maximale Anzahl an Tagen, die rotierte Logdateien aufbewahrt werden.
compress
boolean
Komprimiert rotierte Logdateien mit gzip.
rotationInterval
string
Intervall für die Rotation, zum Beispiel
24h.levelOverrides
map[string]string
Loglevel-Überschreibungen pro Teilbereich, zum Beispiel für
kvstore, locks, cron und perms.secret
string
Globale Verschlüsselungs-Secret für gespeicherte Daten. Dieses Secret muss sich von
jwt.secret unterscheiden.ignoreRequirements
boolean
Überspringt die Startup-Prüfungen für Datenbank und NATS. Nur verwenden, wenn diese Dienste absichtlich nicht verfügbar sind.
jwt
secret
string
Secret zum Signieren von JWTs. Dieses Secret muss sich vom Root-
secret unterscheiden.HTTP
http
listen
string
Haupt-HTTP-Listenadresse.
adminListen
string
Admin-Listenadresse für Metriken und Debug-Endpunkte. Nur lokal binden oder deaktivieren, wenn Sie sie nicht benötigen.
publicURL
string required
Kanonische öffentliche Basis-URL Ihrer FiveNet-Instanz inklusive Schema und Host.
origins
string[] required
Erlaubte Browser-Origin für Frontend und API. Jede Origin explizit eintragen.
trustedProxies
string[] required
Vertrauenswürdige Reverse-Proxy-IP-Adressen oder CIDR-Bereiche, die Client-Header weitergeben dürfen.
sessions
required
cookieSecret
string required
Secret zum Signieren und Verschlüsseln von Session-Cookies.
domain
string required
Cookie-Domain für Session-Cookies.
Datenbank
database
dsn
string required
MySQL- oder MariaDB-DSN. Die Beispielkonfiguration enthält die empfohlenen
collation- und loc-Einstellungen.maxOpenConns
number
Maximale Anzahl offener Datenbankverbindungen.
maxIdleConns
number
Maximale Anzahl inaktiver Datenbankverbindungen.
connMaxIdleTime
string
Maximale Leerlaufzeit einer Verbindung.
connMaxLifetime
string
Maximale Lebensdauer einer Verbindung.
disableLocking
boolean
Deaktiviert das Datenbank-Locking-Verhalten.
skipMigrations
boolean
Überspringt Datenbankmigrationen beim Start.
custom
columns
map
Überschreibt Datenbankspaltennamen. Setzen Sie eine Spalte auf
"-", um sie zu deaktivieren.conditions
map
Zusätzliche Überschreibungen für Datenbankbedingungen.
NATS
nats
url
string
NATS-Verbindungs-URL, bei Bedarf inklusive Zugangsdaten.
replicas
number
Anzahl der Replikate für Streams und Key-Value-Stores.
Storage
storage
type
'filesystem' | 's3'
Wählen Sie das Storage-Backend für Uploads.
filesystem
path
string
Lokaler Dateisystempfad für die Speicherung.
prefix
string
Optionales Präfix innerhalb des Dateisystem-Stores.
s3
endpoint
string
S3-kompatible Endpoint-URL.
region
string
S3-Region.
accessKeyID
string
S3 Access Key ID.
secretAccessKey
string
S3 Secret Access Key.
useSSL
boolean
Verwendet HTTPS für S3-Anfragen.
bucketName
string
Ziel-Bucket in S3.
prefix
string
Optionales Präfix innerhalb des Buckets.
retries
number
Anzahl der Wiederholungsversuche für S3-Operationen.
checkOnStartup
boolean
Prüft die S3-Konfiguration beim Start.
metricsEnabled
boolean
Aktiviert Storage-Metriken.
metricsInterval
string
Intervall für das Erfassen von Storage-Metriken.
Bildproxy
imageProxy
options
allowHosts
string[]
Hosts, die für proxied Bildanfragen erlaubt sind.
denyHosts
string[]
Hosts, die für proxied Bildanfragen verboten sind. Verbotregeln haben Vorrang.
minimumCacheDuration
string
Minimale Cache-Dauer für Bildantworten.
Audit
audit
retentionDays
number
Anzahl der Tage, die Audit-Einträge vor der Bereinigung aufbewahrt werden.
OAuth2
oauth2
providers
array
Liste der OAuth2-Provider.
name
string
Interner Provider-Name, der in der Konfiguration und in Callback-Routen verwendet wird.
label
string
Anzeigename auf dem Login-Button.
homepage
string
Provider-Homepage, die in der UI angezeigt wird.
icon
string
Iconify-Icon-Name oder Bild-URL auf dem Login-Button.
defaultAvatar
string
Optionaler Fallback-Avatar.
type
string
Provider-Typ, zum Beispiel
discord oder generic.redirectURL
string
Callback-URL, die beim OAuth2-Provider registriert wird.
clientID
string
OAuth2-Client-ID.
clientSecret
string
OAuth2-Client-Secret.
scopes
string[]
Angeforderte OAuth2- oder OpenID-Scopes.
endpoints
authURL
string
Autorisierungs-Endpunkt.
tokenURL
string
Endpunkt für den Token-Austausch.
userInfoURL
string
User-Info-Endpunkt.
mapping
id
string
Claim oder Feld für die eindeutige Benutzer-ID.
username
string
Claim oder Feld für den Benutzernamen.
avatar
string
Claim oder Feld für die Avatar-URL.
Dateien und Auth
postalsFile
string
Pfad zur
postals.json-Datendatei von FiveNet.auth
jobAdminGroups
string[]
Gruppen mit Zugriff auf Job-Admin-Superuser-Funktionen.
jobAdminUsers
string[]
Benutzer mit Zugriff auf Job-Admin-Superuser-Funktionen, unabhängig von Gruppenmitgliedschaft.
configAdminGroups
string[]
Gruppen mit Zugriff auf Config-Admin-Superuser-Funktionen.
configAdminUsers
string[]
Benutzer mit Zugriff auf Config-Admin-Superuser-Funktionen, unabhängig von Gruppenmitgliedschaft.
Dispatch Center
dispatchCenter
type
string
Typ des Dispatch-Systems, das in FiveNet-Dispatches konvertiert wird.
convertJobs
string[]
Jobs, die aus Dispatches in FiveNet-Dispatches konvertiert werden.
Discord
discord
enabled
boolean
Aktiviert die Discord-Integration.
dryRun
boolean
Führt Discord-Aktionen aus, ohne Rollen zu ändern oder Nachrichten zu senden.
token
string
Discord-Bot-Token.
sync
boolean
Aktiviert die Discord-Synchronisation.
groupSync
enabled
boolean
Synchronisiert Servergruppen mit Discord-Rollen.
mapping
map
Ordnet Gruppennamen Discord-Rollen-Optionen zu.
userInfoSync
enabled
boolean
Synchronisiert Job-, Grade- und Qualifikationsdaten mit Discord-Rollen.
gradeRoleFormat
string
Formatstring für Grade-Rollen.
employeeRoleFormat
string
Formatstring für Mitarbeiterrollen.
unemployedRoleName
string
Rollenname für arbeitslose Benutzer.
jobsAbsceneRoleName
string
Rollenname für abwesende Benutzer.
qualifications
enabled
boolean
Synchronisiert Qualifikationen mit Discord-Rollen.
commands
enabled
boolean
Aktiviert die Registrierung von Discord-Befehlen.
absent
boolean
Aktiviert den Befehl
absent.fivenet
boolean
Aktiviert den Befehl
fivenet.help
boolean
Aktiviert den Befehl
help.sync
boolean
Aktiviert den Befehl
sync.calendarReminders
boolean
Sendet Kalendererinnerungen in Discord.
Spiel und Sync
game
startJobGrade
number
Erste Jobstufe oder ID, die vom Server verwendet wird.
cleanupRolesForMissingJobs
boolean
Entfernt Discord-Rollen für Jobs, die nicht mehr existieren.
sync
enabled
boolean
Aktiviert oder deaktiviert den Sync-API-Endpunkt.
apiTokens
string[]
API-Tokens, die für Sync-Anfragen akzeptiert werden.
Updates, Icons und Tracing
updateCheck
enabled
boolean
Prüft nach einem Zeitplan auf Updates.
interval
string
Intervall zwischen den Update-Prüfungen.
icons
proxy
boolean
Proxy-Anfragen an Iconify über das Backend statt lokale Icon-Sets zu verwenden.
apiUrl
string
Iconify-API-URL, die im Proxy-Modus verwendet wird.
path
string
Lokales Icon-Set-Verzeichnis, das im Nicht-Proxy-Modus verwendet wird.
otlp
enabled
boolean
Aktiviert den OTLP-Tracing-Export.
type
'stdout' | 'otlptracegrpc' | 'otlptracehttp'
Exportmodus für den OTLP-Client.
url
string
URL des OTLP-Collector-Endpunkts.
insecure
boolean
Erlaubt unsicheren OTLP-Transport.
timeout
string
Timeout für OTLP-Anfragen.
environment
string
Umgebungskennzeichnung, die an Traces angehängt wird.
ratio
float
Sampling-Quote für Traces.
attributes
array
Zusätzliche Span- oder Resource-Attribute.
headers
map[string]string
Zusätzliche Header, die an den OTLP-Endpunkt gesendet werden.
compression
string
Komprimierung für OTLP-Exporte.
frontend
url
string
Trace-Endpunkt für das Frontend. Leer lassen, um die Frontend-Instrumentierung zu deaktivieren.
headers
map[string]string
Zusätzliche Header, die vom Frontend-Trace-Client gesendet werden.
Hinweise
- Halten Sie
secret,jwt.secret, Session-Secrets und Sync-Tokens nach dem Deployment stabil, außer Sie möchten bestehende Sessions oder Zugriffe bewusst ungültig machen. - Verwenden Sie die Beispielkonfigurationsdatei für Kommentare und die vollständige Liste der Optionen.
