Skip to content
Noite
Esc
↑↓navigate↵open⌘Jpreview
On this page

Configure

Env vars, custom domains, collaborators, source edits, and storage for one app.

All of this lives on the app detail page (/apps/<id>, tabs Overview / Deployments / Metrics / Events / Settings).

Environment variables

Settings → Environment. Variables reach the build, the release command, and the fleet environment. Reads are view-gated, writes admin-gated. Download mirrors the .dev.vars file local dev expects. Names starting with FLAG_ render as on/off toggles (1/0).

Reserved prefixes are dropped silently: PORT, HOST, AWS_*, S3_*, CELLD_*, RUNNER_*, NOITE_*, BETTER_AUTH_*, CADDY_*, LD_*, NODE_OPTIONS, BUN_* (except the cache var). Full detail: Environment variables.

Custom domains

Settings → Custom Domain. Adding a hostname reserves it; the edge picks it up on the next reconcile (seconds). Then point DNS at the server:

dig +short app.<domain>

The certificate issues on the first visit (ask-gated on-demand TLS). Validation rules: lowercase DNS shape, ≥ 2 labels, no wildcard/IP/port/path. Platform hostnames are refused; a taken hostname returns 409. There is no DNS ownership check yet — first claimant wins.

Removing a hostname releases it.

Collaborators

Settings → Collaborators. Roles, weakest first:

Role Can
view Read the app, logs, metrics, storage
push Everything above, plus push code (create + fast-forward only)
admin Everything above, plus settings, env vars, domains, any push, collaborator management

Instance admins (the operator track) manage every app without a grant.

Source browser and web commits

The Code button opens /apps/<id>/source: files of the latest pushed commit, a parent diff view, and deep links via ?view= / ?file=. Editing files there stages a web commit — it pushes like a deploy and wakes a sleeping app.

Storage

The Overview tab lists the app’s storage resources; each row opens a detail browser. Kinds: D1 databases, Durable Objects, R2 buckets — as declared by the deployed Wrangler config (read first) or the pushed source. D1 tables page (?p=, ?s=); R2 keys browse by prefix.

Was this page helpful?