Skip to main content

Application

APP_KEY
string
required
A unique 32-byte base64 encryption key for this installation. Generate it with the command below. Never share or commit this value. Changing it after first boot invalidates all existing sessions and encrypted data.
  echo "base64:$(openssl rand -base64 32 2>/dev/null)"
APP_URL
string
required
The full public URL of your Zepeed instance including scheme. For a local setup use http://192.168.1.10:8080. Behind a reverse proxy use https://zepeed.example.com. Used for generating links in emails and API responses.
APP_TIMEZONE
string
default:"UTC"
Timezone for scheduled speedtests. Accepts any valid PHP timezone string, e.g. America/New_York or Asia/Manila.

Database

DB_CONNECTION
string
default:"mariadb"
Database driver. Accepted values: sqlite, mariadb, mysql, pgsql.
DB_HOST
string
Hostname or IP address of your database server. Not required for sqlite. Use the LAN IP of your host — not localhost or 127.0.0.1 — as those resolve to the container itself.
DB_PORT
number
Database port. Defaults to 3306 for MariaDB/MySQL and 5432 for PostgreSQL. Not required for sqlite.
DB_DATABASE
string
default:"zepeed"
Database name. For sqlite, this is the path to the file inside the container — leave unset to use the default at /var/www/html/database/database.sqlite.
DB_USERNAME
string
Database username. Not required for sqlite.
DB_PASSWORD
string
Database password. Not required for sqlite.

WebSockets

PUSHER_APP_ID
string
default:"zepeed"
Internal WebSocket app identifier. Any non-empty string.
PUSHER_APP_KEY
string
default:"zepeed_key"
WebSocket client key. Any non-empty string.
PUSHER_APP_SECRET
string
required
Shared secret between the app and the WebSocket server. Set this to any strong random string — it never leaves your host.
PUSHER_HOST
string
default:"127.0.0.1"
Hostname the browser uses to reach the WebSocket server. For a local setup use your host’s LAN IP. Behind a reverse proxy use your domain name.
PUSHER_PORT
number
default:"6001"
WebSocket server port.
PUSHER_SCHEME
string
default:"http"
http for local setups. https when behind a TLS-terminating reverse proxy.

Default Admin Account

DEFAULT_ADMIN_NAME
string
default:"Zepeed Admin"
Display name for the first admin account created on initial boot.
DEFAULT_ADMIN_EMAIL
string
default:"admin@zepeed.local"
Login email for the first admin account.
DEFAULT_ADMIN_PASSWORD
string
required
Password for the first admin account. Must be at least 8 characters. The account creation step is skipped automatically on every subsequent restart — this value is only used once.