Configuration
Configuration is primarily done through a .env file in the repo root.
The Makefile loads .env automatically when present.
Common settings
Variable | Purpose | Typical values |
|---|---|---|
| Host port mapped to the app container’s 8080 |
|
| Host port for Nginx (full stack) |
|
| Database vendor selection |
|
| JDBC URL for Postgres | e.g. |
| Postgres username |
|
| Postgres password | (set in |
| Postgres database name |
|
SQLite single-file mode
SQLite mode avoids Postgres entirely and stores data in a single .db file.
Key variables:
DB_VENDOR=sqliteSQLITE_DB_PATH(default is./db/cards.dbwhen running standalone; container targets mount./dbinto the app container)
Related commands:
Containerized:
make up-core-sqliteormake build-deploy-sqliteContainerless:
make run-standalone-sqlite
AI settings (optional)
Variable | Purpose |
|---|---|
| API key for hosted “easy mode” providers |
| Base URL for an OpenAI-compatible server (e.g. llama.cpp). |
If you run llama.cpp on the host, the container targets use a host gateway mapping so http://host.docker.internal:<port> can work on Linux.
See: AI-Integration.md
Build-time caches (optional)
USE_NEXUS_MAVEN=1enables Maven dependency caching via a local Nexus.NEXUS_MAVEN_MIRROR_URLpoints Maven at your Nexus group URL.
There are also optional Nexus APT proxy variables used only during Docker builds.
See: Deployment.md