Skip to main content
TinyCloud node config comes from built-in defaults, tinycloud.toml, and TINYCLOUD_ environment variables. Canonical nested env vars use double underscores.

Canonical examples

Core keys

TOML keyPurposeDefault
portHTTP API port8000
addressBind address127.0.0.1
corsEnable CORS headersfalse
storage.datadirRoot directory for local data./data
storage.databaseSQL database connection stringsqlite:./data/caps.db
storage.blocks.typeBlock backendLocal
storage.staging.typeStaging backendMemory
prometheus.portMetrics port8001
telemetry.enabledStart the metrics serverfalse
log.formatLog formatText
log.tracing.enabledEnable OTLP tracingfalse

Storage layout

If you leave local paths unset, the node resolves them under storage.datadir:
  • caps.db for the SQL database
  • blocks/ for local block storage
  • sql/ and duckdb/ for database artifacts

Keys

The node requires a static secret for key derivation unless you are using a specialized deployment mode.
Set the URL-safe, unpadded result in TINYCLOUD_KEYS__SECRET.

Logging and tracing

Use [log] for log format and tracing settings:
When tracing is enabled, the node builds an OTLP gRPC exporter using the exporter’s default endpoint. The current TinyCloud config exposes the enable flag and trace-header name, but not a collector-endpoint setting.
The server still accepts legacy single-underscore env vars, but canonical double-underscore env vars take precedence when both are present.