# Copy to .env and fill in. docker compose picks .env up automatically. # ─── Public hostnames ─────────────────────────────────────────────────────── # Bare hostname (no scheme) where headscale will be reached. Tailscale # clients connect here over HTTPS. HEADSCALE_DOMAIN=hs.example.com # Email for Let's Encrypt registration / expiry notifications. ACME_EMAIL=admin@example.com # Magic-DNS suffix for nodes inside the tailnet. Example: with # TAILNET_DOMAIN=tail.example.com, a host called "laptop" will resolve to # laptop.tail.example.com. MUST be different from HEADSCALE_DOMAIN. TAILNET_DOMAIN=tail.example.com # ─── OIDC (pocket-id) ─────────────────────────────────────────────────────── # Hostname (no scheme) of your pocket-id deployment, used as the OIDC # issuer. Must match the issuer URL pocket-id advertises at # /.well-known/openid-configuration. POCKETID_DOMAIN=auth.example.com # Register a new OIDC client in pocket-id's admin UI with redirect URI: # https://${HEADSCALE_DOMAIN}/oidc/callback # Then paste the credentials here. OIDC_CLIENT_ID= OIDC_CLIENT_SECRET= # ─── Image tags ───────────────────────────────────────────────────────────── HEADSCALE_TAG=0.28.0 CADDY_TAG=2-alpine