firebolt server. The settings in the
engine configuration reference live inside a YAML file. The arguments on
this page are passed on the command line and are required before the configuration file is loaded.
| Argument | Description | Default |
|---|---|---|
--data-dir <path> | Directory for the engine’s local cache and configuration. | A temporary directory, deleted on shutdown |
--server-config <path> | Path to the engine’s YAML configuration file. | <data-dir>/config.yaml |
--data-dir
The data directory is the single writable location the engine owns. Everything the engine writes
locally at runtime lives under it:
persistent_data/: the engine’s local cache and working state.diagnostic_data/: logs and crash dumps.tmp/: temporary files produced while running queries.query_endpoint: the local Unix domain socket used to submit queries when running the single binary directly.
/tmp/firebolt-XXXXXX) and deletes it on shutdown. No data is lost when this
happens, but the cache is gone, so the engine rebuilds it on the next start. Pass --data-dir <path>
to keep the cache across restarts and avoid rebuilding it each time.
The directory must be writable by the user the engine runs as. In the Firebolt Core container image
the data directory is a dedicated writable volume mounted at /var/lib/firebolt, kept separate from
the read-only application files.
--server-config
Points the engine at its YAML configuration file, which declares the
engine’s settings (auth, engine, execution, storage, and so on).
When the argument is omitted, the engine looks for config.yaml inside the data directory
(<data-dir>/config.yaml). If no configuration file is found, the engine starts with built-in
defaults; running the single binary locally writes a minimal starter config.yaml into the data
directory so you can edit it and restart.
Passing an explicit path lets you keep the configuration file outside the data directory, for example
by mounting it read-only, so you manage configuration independently of the engine’s local cache.