Skip to content

Environment Variables & Runtime Flags Reference ​

All YAML configuration properties can be overridden dynamically using environment variables with the RUSEON_ prefix.


1. RUSEON Core Environment Variables Matrix ​

Environment VariableTarget YAML KeyDefaultDescription
RUSEON_SERVER_HOSTserver.host"0.0.0.0"Network interface to bind
RUSEON_SERVER_PORTserver.port8080Main HTTP and WHEP listener port
RUSEON_SERVER_BASE_PATHserver.base_path""Optional URL subpath prefix
RUSEON_AUTH_ENABLEDauth.enabledtrueMaster switch for JWT authentication
RUSEON_AUTH_JWT_SECRETauth.jwt_secret""256-bit HMAC secret (min 32 characters)
RUSEON_AUTH_TOKEN_EXPIRYauth.token_expiry"24h"Access token lifetime duration
RUSEON_WEBRTC_PUBLIC_IPwebrtc.public_ip""External public IPv4/IPv6 for WebRTC SDP
RUSEON_RECORDING_ENABLEDrecording.enabledtrueMaster toggle for fMP4 video recording
RUSEON_RECORDING_STORAGE_PATHrecording.storage_path"./data/recordings"Filesystem directory for video files
RUSEON_RECORDING_RETENTION_DAYSrecording.retention_days14Global video archive retention in days
RUSEON_RECORDING_IO_ENGINErecording.io_engine"linux_direct"Linux direct I/O sliding window engine
RUSEON_LOGGING_LEVELlogging.level"info"Log verbosity (debug, info, warn, error)
RUSEON_LOGGING_FORMATlogging.format"json"Log output format (json or console)

2. Go Runtime Environment Variables ​

Configure the underlying Go runtime for high-throughput containerized environments:

VariableRecommended ValuePurpose
GOMEMLIMIT90% of Container RAM (e.g. 1800MiB)Sets a soft memory ceiling for the Go GC to prevent OOM kills
GOMAXPROCSContainer CPU quotaRestricts CPU thread pools to assigned container cores
GODEBUGmadvdontneed=1Instructs the Go runtime to release freed memory back to OS immediately

Released under the MIT License.