Files
homelab-monitor/.env.example
T
jhodgkin a431b87f1f
CI / web (push) Successful in 19s
CI / api (push) Successful in 28s
Add Authentik OIDC login as an additional sign-in option
Local auth stays the primary/always-available login (don't want to
lock out the saved admin password) — OIDC is additive, shown as a
second button when OIDC_ENABLED=true. Uses openid-client v6 with PKCE.

Authentik-side provider was set up via an authentik blueprint (its own
declarative automation, see docs/oidc-setup.md) rather than touching
any existing admin credentials.

Closes #12.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-12 20:59:25 -06:00

39 lines
1.5 KiB
Bash

# Copy to .env and fill in. Never commit the real .env (see .gitignore).
# Proxmox API token — see docs in the "Provision read-only Proxmox API token" issue
# for how this was created (dedicated monitor@pve user, PVEAuditor role).
PROXMOX_TOKEN_ID=monitor@pve!dashboard
PROXMOX_TOKEN_SECRET=
# Session cookie signing key — generate with: openssl rand -hex 32
SESSION_SECRET=
# Seeded on first boot only; change the password after first login isn't
# implemented yet (see backlog), so pick a real one now.
ADMIN_USERNAME=admin
ADMIN_PASSWORD=
# Local login (username/password above) is always available. Set this true to
# additionally show a "Sign in with Authentik" button — see docs/oidc-setup.md
# for how the Authentik provider was set up.
OIDC_ENABLED=false
OIDC_ISSUER_URL=https://192.168.1.208:9443/application/o/homelab-monitor/
OIDC_CLIENT_ID=
OIDC_CLIENT_SECRET=
OIDC_REDIRECT_URI=http://192.168.1.103:8090/api/auth/oidc/callback
# Authentik's cert is self-signed on the LAN, same situation as Proxmox's API.
OIDC_ALLOW_INSECURE_TLS=true
# Set to true only once a TLS-terminating reverse proxy sits in front (see
# issue #13). Leave false for plain-HTTP LAN access, otherwise the session
# cookie won't be set at all.
COOKIE_SECURE=false
PORT=3000
POLL_INTERVAL_SECONDS=30
SNAPSHOT_RETENTION_HOURS=24
# Dedicated key for SshHostCollector (omv, ripper) — see docs/ssh-collector-key-setup.md.
# In docker-compose this is mounted from ./ssh/monitor_ed25519 (gitignored, not this path).
SSH_PRIVATE_KEY_PATH=./ssh/monitor_ed25519