Skip to content

Environment variables

OpenFishing is configured entirely through environment variables. Every variable is optional except where noted; unset variables fall back to the defaults below.

Variable Default Description
DATABASE_URL local.db Path to the SQLite database file. In Docker, point this at your data volume, e.g. /app/data/openfishing.db.
UPLOAD_PATH ./uploads Directory for lure/spot/catch photos. Mount a volume here (e.g. /app/uploads).
BASE_URL http://localhost:5173 Public base URL, used to build QR-code and password-reset links. Set this to your real HTTPS URL behind a reverse proxy.
ADMIN_PASSWORD (unset) Set to enable multi-user login. It is the password for the admin account (username is always admin, re-synced each boot). Unset = fully open single-tenant instance.
AUTH_PASSWORD (unset) Deprecated fallback name for ADMIN_PASSWORD. Prefer ADMIN_PASSWORD.
SMTP_HOST (unset) SMTP server hostname for “forgot password” emails.
SMTP_PORT (unset) SMTP server port.
SMTP_SECURE (unset) Use TLS for the SMTP connection.
SMTP_USER (unset) SMTP username.
SMTP_PASS (unset) SMTP password.
SMTP_FROM (unset) The From: address for outgoing mail.
DEMO_MODE (unset) Any value = read-only demo mode (all writes blocked).
CHATBOT (unset) Any truthy value enables the AI chatbot (requires the LiteLLM variables).
LITELLM_URL (unset) Base URL of your LiteLLM proxy, e.g. http://litellm:4000.
LITELLM_MODEL (unset) Model name matching a litellm.config.yaml entry.
LITELLM_VISION_MODEL (unset) Optional vision-capable model for fish/lure identification. Falls back to LITELLM_MODEL.
BODY_SIZE_LIMIT 104857600 Maximum upload size in bytes (default ≈ 100 MB).

The defaults above are the app’s built-in code defaults. In a container you’ll typically override the paths to point at mounted volumes:

Terminal window
DATABASE_URL=/app/data/openfishing.db
UPLOAD_PATH=/app/uploads
  • Storage: DATABASE_URL, UPLOAD_PATH, BODY_SIZE_LIMIT
  • Networking / links: BASE_URL
  • Authentication: ADMIN_PASSWORD (AUTH_PASSWORD deprecated)
  • Email / password reset: SMTP_HOST, SMTP_PORT, SMTP_SECURE, SMTP_USER, SMTP_PASS, SMTP_FROM
  • AI features: CHATBOT, LITELLM_URL, LITELLM_MODEL, LITELLM_VISION_MODEL
  • Demo: DEMO_MODE

See Multi-user & authentication, AI features and Demo mode for how these groups fit together.