Skip to content

Configuration

All Hub services are configured via environment variables, managed by envix through each service's ConfigModule.

Common Variables

These variables are shared across all services:

VariableRequiredDescription
PORTNoHTTP server port (default varies by service)
AUTHUP_URLYesAuthup identity provider URL
REDIS_URLNoRedis connection URL (for pub/sub and caching)
AMQP_URLNoRabbitMQ connection URL

Database Variables

Used by server-core, server-storage, and server-telemetry:

VariableRequiredDescription
DB_TYPEYesmysql, postgres, or better-sqlite3
DB_HOSTYes*Database hostname
DB_PORTYes*Database port
DB_USERNAMEYes*Database username
DB_PASSWORDYes*Database password
DB_DATABASEYesDatabase name (or :memory: for SQLite)

*Not required for SQLite.

SQLite has no upgrade path

Migrations only run for mysql and postgres. On SQLite the schema is built from the entity classes by synchronize(), and only when no schema exists yet — so an existing SQLite database is never migrated or altered on upgrade.

Schema changes therefore break a persistent SQLite deployment. The rename of the analysis table to analyses is one such change: a SQLite database created before it keeps the old table, and queries against the new name fail.

Use SQLite only for tests and throwaway/in-memory (:memory:) instances. For any database you intend to keep, use MySQL or PostgreSQL. To carry an existing SQLite database across a schema change, export its data and re-import it into a freshly created database.

Storage Variables (server-storage)

VariableRequiredDescription
MINIO_ENDPOINTYesMinIO/S3 endpoint URL
MINIO_ACCESS_KEYYesS3 access key
MINIO_SECRET_KEYYesS3 secret key
MINIO_USE_SSLNoEnable SSL for MinIO connection
MINIO_PORTNoMinIO port

Telemetry Variables (server-telemetry)

VariableRequiredDescription
VICTORIA_LOGS_URLYesVictoriaLogs endpoint URL