Raiyun Docs

raisearch Environment variables

Configure your port, paths, and optional settings.

General

Variable Description Default
RAIYUN_PORT The port your server listens on. 4444
RAIYUN_BASE_URL Base path for serving Raiyun behind a reverse proxy at a sub-path. The expected value is a path like /raiyun. A full URL is also accepted - https://example.com/raiyun behaves the same as /raiyun since only the path portion is used. A bare domain with no sub-path (e.g. https://raiyun.org) has no effect since there is no path to prepend. When unset, Raiyun is served at the root / as usual.

Note: the OpenSearch XML descriptor always uses only the path portion of this value so that its URLs remain valid regardless of how the variable was set.
RAIYUN_SETTINGS_PASSWORDS A comma separated list of passwords for your Settings page. If you set this, users must enter one of these passwords to access your settings (unless you are using a middleware plugin as a gate).
RAIYUN_PUBLIC_INSTANCE Set this to a truthy value (like true or 1) to run your instance in read only mode. Settings will only show theme and engine toggles without any tabs, and all server side mutation APIs will return Unauthorized.
RAIYUN_DISTRUST_PROXY Set this to a truthy value to ignore X-Forwarded-For and X-Real-IP headers for rate limiting. You should use this if Raiyun is exposed directly to the internet without a reverse proxy so clients cannot spoof their IP address.
RAIYUN_DEFAULT_SEARCH_LANGUAGE Default ISO 639-1 language code applied to all searches when searches when no language is selected by the user (e.g. en, de, it). en-US
RAIYUN_I18N Forces the UI locale for all requests, overriding the Accept-Language header (e.g. en-US, fr-FR). When set, the same locale pipeline runs as normal - only the source changes. Unset or empty: Accept-Language is used as today.
LOG_LEVEL Controls the verbosity of server-side console output. Supported levels from most to least severe: fatal, error, warn, info, log, debug. Each level includes all levels of higher severity. Set to debug to print all messages, including plugin execution times. If you use docker you can view your logs with docker compose logs -f. info

Docker

Variable Description Default
PUID The user ID your container process runs as. You should set this to match your host user ID. 1000
PGID The group ID your container process runs as. You should set this to match your host group ID. 1000

Plugins, themes, engines

Variable Description Default
RAIYUN_PLUGINS_DIR The directory where you load custom command and slot plugins. data/plugins
RAIYUN_THEMES_DIR The directory where you load custom themes. data/themes
RAIYUN_ENGINES_DIR The directory where you load custom search engine plugins. data/engines
RAIYUN_TRANSPORTS_DIR The directory where you load custom transports. data/transports
RAIYUN_PLUGIN_SETTINGS_FILE The path to the JSON file that stores your extension settings (for plugins, themes, engines, and more). data/plugin-settings.json
RAIYUN_DEFAULT_ENGINES_FILE Path to the JSON file storing default enabled/disabled engines data/default-engines.json
RAIYUN_SETTINGS_TOKENS_FILE Path to the JSON file storing settings tokens data/settings-tokens.json
RAIYUN_ALIASES_FILE The path to the JSON file where your custom bang command aliases are defined. data/aliases.json