DocumentationConfiguration

Rust · 0.1.0

Configuration

Understand which settings belong to process startup, instance administration or your own account, then change one layer at a time.

Find the owner of a setting

A setting's location determines how it is changed and when it takes effect. Startup flags select the listener and database; application settings control instance policy and providers. A deployment-managed file can override the stored application value until the process restarts without that file.

LayerExamplesHow to work with it
CLI / environmentMEMOS_ADDR, MEMOS_PORT, MEMOS_DATA, MEMOS_DRIVER, MEMOS_DSNEdit the process configuration and restart
Instance settingsAccess policy, storage, notifications, authentication providersUse an authorized administrator account
Deployment filesSupported instance settings and identity providersChange the mounted file and restart; UI writes are rejected while overridden
Personal settingsPreferences, tokens and webhooksUse the relevant account's settings

Start with explicit local paths

After building a native binary, use an isolated data directory while learning the configuration. Native startup defaults to port 8081; the packaged container sets 5230. An explicit loopback address avoids exposing a development process on other interfaces. Read runtime flags and environment before moving this configuration into a service manager.

./build/memos --help
unset MEMOS_UNIX_SOCK MEMOS_DEMO
./build/memos --addr 127.0.0.1 --port 8081 --driver sqlite --dsn '' --data ./dev-data

Change and verify one concern

Record the previous non-secret values and take a backup before changes that affect persistence. For a storage change, upload and read back a new small attachment; for authentication, retain a recovery path and sign in with a separate test account; for access policy, use a signed-out browser session. A saved setting is not sufficient evidence that the underlying service works.

Resolve common configuration failures

Use deployment-managed settings when a field is read-only, database configuration when startup cannot connect, and attachment storage when upload or download fails. Never paste database credentials or provider secrets into an error report. Include the setting group, redacted error and whether the failure began after a restart.

Guides in this section