Configuration

qqq configuration reference

Overview

qqq applications are configured through environment variables, configuration files, and Java metadata.

Environment Variables

Core Settings

VariableDescriptionDefault
QQQ_PORTHTTP server port8080
QQQ_HOSTBind address0.0.0.0
QQQ_LOG_LEVELLog levelINFO
QQQ_ENVEnvironment namedevelopment

Database

VariableDescriptionExample
DATABASE_URLJDBC URLjdbc:postgresql://localhost:5432/myapp
DATABASE_USERDB usernamemyapp
DATABASE_PASSWORDDB passwordsecret
DATABASE_POOL_SIZEConnection pool10

Authentication

VariableDescription
QQQ_AUTH_SECRETJWT signing secret
QQQ_AUTH_ISSUERToken issuer
QQQ_AUTH_EXPIRYToken expiry (seconds)

Configuration Files

application.properties

Properties
qqq.server.port=8080
qqq.database.url=${DATABASE_URL}
qqq.logging.level=INFO

application.yaml

YAML
qqq:
  server:
    port: 8080
  database:
    url: ${DATABASE_URL}
  logging:
    level: INFO

Profile-Based Configuration

Use profiles for environment-specific settings:

Text
application-development.yaml
application-staging.yaml
application-production.yaml

Activate with:

Bash
export QQQ_PROFILES=production

Configuration Precedence

1. Environment variables (highest)

2. System properties

3. application-{profile}.yaml

4. application.yaml

5. Defaults (lowest)

Powered by qqq