Configuration
The server is configured with environment variables.
| Variable | Default | |
|---|---|---|
SALT_API_URL |
(required) | salt-api (rest_cherrypy) base URL |
SALT_API_USERNAME / SALT_API_PASSWORD |
(required) | the service account |
SALT_API_EAUTH |
pam |
eauth backend of the service account |
PUBLIC_URL |
http://localhost:8080 |
the URL users open; cookies and origin checks are based on it |
PORT |
8080 |
port the server listens on |
DATABASE_URL |
SQLite in DATA_DIR |
set postgres://user:pass@host/db to use Postgres |
DATA_DIR |
/data in the image |
SQLite database and the generated auth secret |
BETTER_AUTH_SECRET |
generated into DATA_DIR |
set it explicitly when running on Postgres without a data volume |
TRUSTED_ORIGINS |
extra origins allowed to call the API (comma-separated) | |
TRUST_PROXY |
off | set to 1 behind a reverse proxy, so client IPs (for rate limits and the audit log) are taken from X-Forwarded-For |
JOB_RETENTION_DAYS |
90 |
how long recorded jobs and their returns are kept |
AUDIT_RETENTION_DAYS |
forever | how long audit log entries are kept, e.g. 365; unset or 0 keeps them all |
PRESENCE_CHECK_MINUTES |
5 |
how often the server checks which minions respond, for the Minions down alert; 0 turns it off |
TZ |
UTC in the image |
time zone for schedules, e.g. Europe/Bratislava |
PASSWORD_LOGIN |
all |
admins allows passwords for admins only, as a break-glass next to SSO |
METRICS_TOKEN |
off | bearer token for the Prometheus endpoint /metrics, see Monitoring |
STATIC_DIR |
./dist |
where the built UI is served from |
Single sign-on adds the OIDC_* variables, listed in Single sign-on.
Build-time variables
Section titled “Build-time variables”These apply when building the UI yourself.
| Variable | |
|---|---|
VITE_SALT_API_URL |
salt-api URL for direct mode when it’s on another origin |
VITE_SOURCE_URL |
link to the source code shown in the UI; set it to your fork (see License) |