Support separate auth domain (e.g. auth.cameleer.io) for Logto while
keeping the SaaS app on PUBLIC_HOST (e.g. app.cameleer.io). AUTH_HOST
defaults to PUBLIC_HOST for backward-compatible single-domain setups.
- Logto routing: Host(AUTH_HOST) replaces PathPrefix('/') catch-all
- Root redirect moved from traefik-dynamic.yml to Docker labels with
Host(PUBLIC_HOST) scope so it doesn't intercept auth domain
- Self-signed cert generates SANs for both domains
- Bootstrap Host header uses AUTH_HOST for Logto endpoint validation
- Spring issuer-uri and oidcissueruri use new authhost property
- Both installers (sh + ps1) prompt for AUTH_HOST in expert mode
Local dev: AUTH_HOST=auth.localhost (resolves to 127.0.0.1, no hosts file)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
51 lines
1.3 KiB
Plaintext
51 lines
1.3 KiB
Plaintext
# Cameleer SaaS — Environment Configuration
|
|
# Copy to .env and fill in values for production
|
|
|
|
# Image version
|
|
VERSION=latest
|
|
|
|
# Public access
|
|
PUBLIC_HOST=localhost
|
|
PUBLIC_PROTOCOL=https
|
|
# Auth domain (Logto). Defaults to PUBLIC_HOST for single-domain setups.
|
|
# Set to a separate subdomain (e.g. auth.cameleer.io) to split auth from the app.
|
|
# AUTH_HOST=localhost
|
|
|
|
# Ports
|
|
HTTP_PORT=80
|
|
HTTPS_PORT=443
|
|
LOGTO_CONSOLE_PORT=3002
|
|
|
|
# PostgreSQL
|
|
POSTGRES_USER=cameleer
|
|
POSTGRES_PASSWORD=change_me_in_production
|
|
POSTGRES_DB=cameleer_saas
|
|
|
|
# ClickHouse
|
|
CLICKHOUSE_PASSWORD=change_me_in_production
|
|
|
|
# Admin user (created by bootstrap)
|
|
SAAS_ADMIN_USER=admin
|
|
SAAS_ADMIN_PASS=change_me_in_production
|
|
|
|
# TLS (leave empty for self-signed)
|
|
# NODE_TLS_REJECT=0 # Set to 1 when using real certificates
|
|
# CERT_FILE=
|
|
# KEY_FILE=
|
|
# CA_FILE=
|
|
|
|
# Vendor account (optional)
|
|
VENDOR_SEED_ENABLED=false
|
|
# VENDOR_USER=vendor
|
|
# VENDOR_PASS=change_me
|
|
|
|
# Docker socket GID (run: stat -c '%g' /var/run/docker.sock)
|
|
# DOCKER_GID=0
|
|
|
|
# Docker images (override for custom registries)
|
|
# TRAEFIK_IMAGE=gitea.siegeln.net/cameleer/cameleer-traefik
|
|
# POSTGRES_IMAGE=gitea.siegeln.net/cameleer/cameleer-postgres
|
|
# CLICKHOUSE_IMAGE=gitea.siegeln.net/cameleer/cameleer-clickhouse
|
|
# LOGTO_IMAGE=gitea.siegeln.net/cameleer/cameleer-logto
|
|
# CAMELEER_IMAGE=gitea.siegeln.net/cameleer/cameleer-saas
|