Skip to content

Environment variables

Wojciech Frącz edited this page Apr 14, 2026 · 13 revisions

Required variables

Variable Description
APP_ENV The application environment. Must be set to prod in deployment. See more at Configuring Symfony.
APP_DEBUG Whether to enable debug mode or not. Must be set to 0 in deployment.
APP_SECRET Random, at least 32-chars, at best 64-charts length secret for the application. Must be set in deployment. You may generate it with openssl rand -hex 32.
DATABASE_URL Database connection string. Example: mysql://root:php@127.0.0.1:3306/supla?serverVersion=mariadb-11.7.2&charset=utf8mb4.
SUPLA_HOST_ADDRESS Host (and possibly port) where SUPLA Cloud is running. E.g. svr44.supla.org or mycloudinstance.local:8080.
MAILER_DSN Mailer DSN connection string.
For Gmail as a transport, use: gmail://username:password@localhost
For a generic SMTP server, use: smtp://localhost:25?encryption=&auth_mode=
With username and password, use: smtp://username:password@localhost:25?encryption=&auth_mode=
SUPLA_MAILER_FROM From field for emails sent by SUPLA Cloud.
SUPLA_ADMIN_EMAIL Email address of the admin user.

Optional variables (with defaults)

Variable Default Description
CORS_ALLOW_ORIGIN ^https?://(localhost|127.0.0.1)(:[0-9]+)?$ Regex for hosts that should be enabled for CORS requests.
DATABASE_TSDB_URL "" (empty) Database connection string for TimescaleDB, if used.
GOOGLE_RECAPTCHA_SITE_KEY "" (empty) Public site key for Google reCAPTCHA. Must be set in deployment if you want to use reCAPTCHA.
GOOGLE_RECAPTCHA_SECRET "" (empty) Secret key for Google reCAPTCHA. Must be set in deployment if you want to use reCAPTCHA.
SUPLA_ACCOUNTS_REGISTRATION_ENABLED true Whether accounts registration is enabled or not. Use true or false.
SUPLA_ACT_AS_BROKER_CLOUD false Whether the server should work as an official broker. Use true or false.
SUPLA_API_RATE_LIMIT_ENABLED true Whether to enable API rate limiting. Use true or false.
SUPLA_API_RATE_LIMIT_GLOBAL_LIMIT 320/60 Global limit for API requests (if used). Use format requests/seconds.
SUPLA_API_RATE_LIMIT_USER_DEFAULT_LIMIT 1000/3600 Default per-user limit for API requests (if used). Use format requests/seconds.
SUPLA_BRUTE_FORCE_AUTH_PREVENTION_ENABLED true Whether to enable brute force prevention for authentication (blocking user for some time after unsuccessful login attempts). Use true or false.
SUPLA_MQTT_BROKER_ENABLED false Whether to enable MQTT broker. Use true or false.
SUPLA_MQTT_BROKER_HOST "" (empty) MQTT broker host.
SUPLA_MQTT_BROKER_PORT 8883 MQTT broker port.
SUPLA_MQTT_BROKER_TLS true Whether to use TLS encryption for MQTT broker. Use true or false.
SUPLA_MQTT_BROKER_USERNAME "" (empty) MQTT broker username.
SUPLA_MQTT_BROKER_PASSWORD "" (empty) MQTT broker password.
SUPLA_MQTT_BROKER_INTEGRATED_AUTH false Whether to use integrated authentication for MQTT broker. Use true or false.
SUPLA_PROTOCOL https Protocol that should be used for web application and API. Must be http or https.
SUPLA_REQUIRE_COOKIE_POLICY_ACCEPTANCE true Whether to require cookie policy acceptance. Use true or false.
SUPLA_REQUIRE_REGULATIONS_ACCEPTANCE true Whether to require regulations acceptance. Use true or false.

Clone this wiki locally