Skip to content

Configuration & env vars

All configuration is via environment variables (most have sensible defaults). Per-service, domain, and global settings live in the database and are edited in the UI.

Core

VariableDefaultNotes
DATABASE_URLpostgresql://admin:password@localhost:5432/traefik_sharePostgreSQL connection string. Required in production.
DB_CONNECTION_LIMIT10Connection pool size.
NEXT_PUBLIC_BASE_URLhttp://localhost:3000Public base URL of the panel.
NODE_ENVproduction enables secure cookies, etc.

Traefik API (optional, externally-managed)

Set these to enable the runtime explorer, metrics, conflict detection, and discovery of entrypoints/middlewares/resolvers. Everything degrades gracefully when unset.

VariableDefaultNotes
TRAEFIK_API_URLBase URL of Traefik's API, e.g. http://localhost:8080.
TRAEFIK_METRICS_URL${TRAEFIK_API_URL}/metricsPrometheus metrics endpoint.
TRAEFIK_METRICS_INTERVAL_SECONDS60Scrape interval.
TRAEFIK_METRICS_RETENTION_MINUTES180Sample retention window.

Managed mode

Used only by the fully-managed bundle. The managed plumbing stays dormant unless TRAEFIK_MANAGED=true.

VariableDefaultNotes
TRAEFIK_MANAGEDfalsetrue turns on managed mode (the panel owns Traefik's static config).
MANAGED_SECRETS_KEYEncrypts DNS-provider credentials at rest (AES-256-GCM). Generate with openssl rand -base64 32. Without it, credentials are stored unencrypted (a warning is logged). Rotating it invalidates stored credentials.
MANAGED_SECRETS_FILE<cwd>/.managed-secrets.encWhere the encrypted credential file lives (the bundle sets /data/managed-secrets.enc on a volume).
ADMIN_PANEL_AUTHHTTP basic-auth users (htpasswd entries, comma/newline separated) protecting the panel's auto-generated Traefik route. Quote the value so $ in hashes isn't interpolated.
PANEL_INTERNAL_URLhttp://<adminPanelDomain>Internal URL Traefik uses for forward-auth and cert-trigger callbacks; in the bundle it's the panel's container address so those calls bypass the panel's basic auth.

Bundle Compose variables

VariableDefaultNotes
POSTGRES_PASSWORDRequired by docker-compose.managed.yml.
POSTGRES_USER / POSTGRES_DBadmin / traefik_shareDatabase name/user.
CONFIGURATOR_IMAGEghcr.io/janhouse/traefik-proxy-admin:latestPanel image (override or use the build: fallback).
TRAEFIK_IMAGEtraefik:v3.7Traefik image.

DNS-challenge provider credentials are best set in the UI (write-only, encrypted). You can still hard-code them as env vars on the traefik service if you prefer.

Database & migrations

Migrations run automatically on startup (Next.js instrumentation.ts). For development:

bash
pnpm db:generate   # generate a migration from schema changes
pnpm db:push       # push schema changes
pnpm db:studio     # open Drizzle Studio

Released under the AGPL-3.0 License.