.env.example : variables de l'interface web, OIDC et CLI

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015a8P6WMRPeqdpd5VCh6jAy
This commit is contained in:
claude BotandClaude Opus 5.5 committed 2026-10-14 08:59:39 +02:00
1 parent 664e43a181
commit 0fb88cb4b0
2 files changed
+56 -1

No files matched your search

+54
View File
@@ -0,0 +1,54 @@
# Copier en .env (ignoré par Git) puis adapter : cp .env.example .env
# Lu par docker compose (substitution ${...} et env_file des services) ; avec la CLI
# ou `serve` hors conteneur : set -a; . ./.env; set +a
# Les lignes commentées donnent la valeur par défaut. Pour les secrets, préférer la
# variante _FILE (secret docker monté dans /run/secrets) à une valeur en clair ici.
# ---------- Commun ----------
TZ=Europe/Paris
# Port publié par docker-compose.demo.yml
# CONFSYNC_PORT=8080
# ---------- Interface web (pve-confsync serve) ----------
# LISTEN=:8080
# DATA_DIR=/data # base SQLite, secret.key, session.key
# SESSION_TTL=12h # durée Go : 30m, 8h, 24h…
# CONFSYNC_DEMO=false # true : faux clusters PVE, base temporaire
# Clé AES-256 des secrets en base (64 caractères hex ou base64 de 32 octets) :
# openssl rand -hex 32
# Ordre de lecture : CONFSYNC_SECRET_KEY, puis CONFSYNC_SECRET_KEY_FILE, sinon DATA_DIR/secret.key
# (créée au 1er démarrage). Le compose fournit déjà CONFSYNC_SECRET_KEY_FILE ; une valeur
# CONFSYNC_SECRET_KEY ici serait prioritaire. Sans cette clé, les secrets enregistrés sont perdus.
# CONFSYNC_SECRET_KEY=
# CONFSYNC_SECRET_KEY_FILE=/run/secrets/confsync_key
# Premier administrateur, créé seulement si la base n'a aucun utilisateur.
# Sans mot de passe fourni, il est tiré au hasard et écrit une fois dans les logs.
# CONFSYNC_ADMIN_USER=admin
# CONFSYNC_ADMIN_PASSWORD=
# CONFSYNC_ADMIN_PASSWORD_FILE=/run/secrets/confsync_admin
# Import initial du YAML de la CLI si la base n'a aucun cluster
# CONFSYNC_IMPORT=/config/confsync.yaml
# Comptes locaux (false exige OIDC)
# AUTH_LOCAL=true
# ---------- OIDC (optionnel ; actif dès que OIDC_ISSUER est renseigné) ----------
# OIDC_ISSUER=https://auth.example.org/application/o/confsync/
# OIDC_CLIENT_ID=confsync
# OIDC_CLIENT_SECRET=
# OIDC_CLIENT_SECRET_FILE=/run/secrets/oidc_client
# URL complète déclarée chez l'IdP ; son chemin devient la route de callback
# OIDC_REDIRECT_URL=https://confsync.example.org/auth/callback
# OIDC_SCOPES=openid profile email # ajouter le scope qui fournit les groupes (ex. groups)
# OIDC_GROUPS_CLAIM=groups
# OIDC_ADMIN_GROUP=confsync-admins
# OIDC_OPERATOR_GROUP=confsync-operators
# OIDC_DEFAULT_ROLE=viewer # admin, operator ou viewer
# ---------- CLI (pve-confsync check | export | diff | apply) ----------
# CONFSYNC_CONFIG=/config/confsync.yaml
# Secrets des tokens référencés par token_secret_env dans confsync.yaml (un par cluster) :
# PVE_SITE_B_SECRET=