Skip to content

Tilez Hub settings

Settings go in -e NAME=value options of docker run, in a file of NAME=value lines given with --env-file <file>, or under environment: in the compose file. Start the hub again after a change.

Setting Default What
CASA_PORT 8080 The port the hub listens on (plain HTTP)
CASA_PAIRING home home: devices on your home network are paired without a code, others with one. code: a code for every device. open: no code for anyone who reaches the hub; use it only when a reverse proxy decides who gets through
CASA_USERS off on: devices sign in with a user’s name and password instead of pairing. Make the first admin with cli.cjs user add <name> before turning it on
CASA_HOME_NETWORK on on: devices on your home network reach the hub directly at http://<its address>:8080/. off: only through the reverse proxy
CASA_PUBLIC_URL The address the apps use at your reverse proxy (https://tilez.example.com/). The hub announces it on your network, so the apps list it
CASA_PROXY_ADDRESSES 127.0.0.0/8,::1,172.16.0.0/12 The addresses or ranges your reverse proxy connects from. The default covers a proxy on the same machine, natively or in Docker
CASA_NAME the machine’s name The name the apps show
CASA_MDNS on off: the hub does not announce itself on your network
CASA_BRIDGE on off: browsers cannot reach your network through the hub
CASA_NET_ALLOW Addresses or ranges the bridge may reach although they are refused by default, such as 127.0.0.1 for a service on the same machine
CASA_NET_DENY More addresses or ranges the bridge may not reach
CASA_SECRETS file store: dashboards’ credentials are kept apart from the dashboard files, encrypted with a key of the hub’s own (CASA_SECRET_KEY_FILE, outside the data volume; without it, the credentials are lost)

By default the bridge reaches your network and the internet. It cannot reach the hub’s own machine, link-local addresses, multicast or broadcast. Names your dashboard uses must resolve on the hub’s machine: use a full name (influx.lan), not a single word (influx).

Run docker exec -it tilez-hub node cli.cjs <command> (with Compose: docker compose exec tilez-hub node cli.cjs <command>), where the command is one of these:

Command What
pair A new pairing code
clients The paired browsers and apps, with their roles
revoke <id> Unpairs a browser or app and deletes its data
role <id> admin|reader What a device may do: an admin can change dashboards and devices; a reader only shows dashboards
users The users, with their roles
user add <name> [--reader] A new user: an admin unless --reader. The password is asked twice
user password <name> A new password; the user’s devices are signed out
user role <name> admin|reader The user’s role, and so their devices’
user remove <name> Removes the user and unpairs their devices