Files
Oxicloud/docs/config/env.md
T
onthebed 0629177278 docs(wopi): document public and callback base URLs
Clarify how OXICLOUD_WOPI_PUBLIC_BASE_URL and OXICLOUD_WOPI_BASE_URL
should be set when the office editor runs on a different hostname.
2026-04-26 13:16:04 +08:00

4.3 KiB

Environment Variables

Most runtime variables use the OXICLOUD_ prefix. A few build-time or allocator variables do not.

Server

Variable Default Description
OXICLOUD_STORAGE_PATH ./storage Root storage directory
OXICLOUD_STATIC_PATH ./static Static files directory
OXICLOUD_SERVER_PORT 8086 Server port
OXICLOUD_SERVER_HOST 127.0.0.1 Server bind address
OXICLOUD_BASE_URL (auto) Public base URL for share links

Database

Variable Default Description
OXICLOUD_DB_CONNECTION_STRING postgres://postgres:postgres@localhost:5432/oxicloud PostgreSQL connection string
OXICLOUD_DB_MAX_CONNECTIONS 20 Max pool connections
OXICLOUD_DB_MIN_CONNECTIONS 5 Min pool connections
OXICLOUD_DB_MAINTENANCE_MAX_CONNECTIONS 5 Max connections in the isolated maintenance pool
OXICLOUD_DB_MAINTENANCE_MIN_CONNECTIONS 1 Min connections in the isolated maintenance pool

Build-Time SQLx

Variable Default Description
DATABASE_URL — Build-time database URL for SQLx compile-time checks

Authentication

Variable Default Description
OXICLOUD_JWT_SECRET (random) JWT signing secret
OXICLOUD_ACCESS_TOKEN_EXPIRY_SECS 3600 Access token lifetime (seconds)
OXICLOUD_REFRESH_TOKEN_EXPIRY_SECS 2592000 Refresh token lifetime (seconds)

Feature Flags

Variable Default Description
OXICLOUD_ENABLE_AUTH true Enable authentication
OXICLOUD_ENABLE_USER_STORAGE_QUOTAS false Per-user storage quotas
OXICLOUD_ENABLE_FILE_SHARING true File/folder sharing
OXICLOUD_ENABLE_TRASH true Trash / recycle bin
OXICLOUD_ENABLE_SEARCH true Search

OIDC / SSO

See the OIDC configuration guide for details.

Variable Default Description
OXICLOUD_OIDC_ENABLED false Enable OIDC
OXICLOUD_OIDC_ISSUER_URL — OIDC issuer URL
OXICLOUD_OIDC_CLIENT_ID — Client ID
OXICLOUD_OIDC_CLIENT_SECRET — Client secret
OXICLOUD_OIDC_REDIRECT_URI http://localhost:8086/api/auth/oidc/callback Callback URL
OXICLOUD_OIDC_SCOPES openid profile email Requested scopes
OXICLOUD_OIDC_FRONTEND_URL http://localhost:8086 Frontend URL
OXICLOUD_OIDC_AUTO_PROVISION true Auto-create users on first SSO login
OXICLOUD_OIDC_ADMIN_GROUPS — Groups that grant admin role
OXICLOUD_OIDC_DISABLE_PASSWORD_LOGIN false Hide password form when OIDC enabled
OXICLOUD_OIDC_PROVIDER_NAME SSO Display name for the provider

WOPI (Office Editing)

See the WOPI configuration guide for details.

Variable Default Description
OXICLOUD_WOPI_ENABLED false Enable WOPI
OXICLOUD_WOPI_DISCOVERY_URL — Collabora/OnlyOffice discovery URL
OXICLOUD_WOPI_BASE_URL OXICLOUD_BASE_URL URL the editor uses to call OxiCloud's /wopi/* endpoints
OXICLOUD_WOPI_PUBLIC_BASE_URL OXICLOUD_WOPI_BASE_URL URL the browser uses to open OxiCloud's WOPI host page and postMessage origin
OXICLOUD_WOPI_SECRET (JWT secret) WOPI token signing key
OXICLOUD_WOPI_TOKEN_TTL_SECS 86400 Token lifetime
OXICLOUD_WOPI_LOCK_TTL_SECS 1800 Lock expiration

When Collabora or OnlyOffice runs on a different hostname, set OXICLOUD_WOPI_PUBLIC_BASE_URL to the public OxiCloud URL that the browser can reach. If the editor reaches OxiCloud through a different internal URL, also set OXICLOUD_WOPI_BASE_URL for those callbacks.

Allocator Tuning

These variables are read directly by mimalloc, not by OxiCloud's config parser.

Variable Default Description
MIMALLOC_PURGE_DELAY 0 Delay in ms before freed memory is returned to the OS
MIMALLOC_ALLOW_LARGE_OS_PAGES 0 Enable or disable large OS pages for allocations

Internal Defaults (not configurable via env)

Parameter Default
File cache TTL 60 s
Directory cache TTL 120 s
Max cache entries 10 000
Large file threshold 100 MB
Streaming chunk size 1 MB
Max parallel chunks 8
Trash retention 30 days
Argon2id memory cost 64 MB
Argon2id time cost 3 iterations