Watchflare docs
Sur cette page

Variables d'environnement du Hub

Table de poche : toutes les variables du Hub, défauts et longueurs. Le détail est dans la référence de configuration.

Rien d’autre que des variables d’environnement. Compose : fichier .env à côté de docker-compose.yml.

Explications, pièges, fichier complet : Référence de configuration.


Trois secrets

VariableLongueur min.Description
POSTGRES_PASSWORDAucuneMot de passe TimescaleDB. Le binaire retombe sur watchflare_dev si elle manque : pas en production. Compose l’exige (:?).
JWT_SECRET32 caractèresCookies de session et secrets TOTP. Absente ou trop courte : le Hub refuse de démarrer. La changer jette les sessions et casse le 2FA.
NOTIFICATION_ENCRYPTION_KEY32 caractèresChiffre SMTP et URL des canaux, au repos. Sur le binaire, on peut s’en passer (plus de stockage de notifications). Dans le Compose, elle est obligatoire (:?), même sans canal prévu. Posée mais trop courte : le Hub s’arrête.

Base

VariableDéfautDescription
POSTGRES_HOSTlocalhostHôte PostgreSQL. Compose : postgres.
POSTGRES_PORT5432Port
POSTGRES_USERwatchflareUtilisateur
POSTGRES_PASSWORDwatchflare_devMot de passe
POSTGRES_DBwatchflareBase
POSTGRES_SSLMODEdisableSSL PostgreSQL

Ports

VariableDéfautDescription
HUB_PORT8080Docker. Port HTTP vu de l’extérieur. Dedans, toujours 8080.
GRPC_PORT50051gRPC des agents

TLS

VariableDéfautDescription
TLS_MODEautoauto : CA et certificat fabriqués par le Hub. custom : vos fichiers.
TLS_PKI_DIR/var/lib/watchflare/pkiCertificats auto-générés (auto)
TLS_CERT_FILEAucunCertificat serveur (custom)
TLS_KEY_FILEAucunClé privée serveur (custom)
TLS_CA_FILEAucunCA envoyée aux agents à l’enrôlement (custom)

Cookies

VariableDéfautDescription
COOKIE_SECURE(auto)Force Secure (true / false). Vide = détection automatique, c’est le bon choix.
COOKIE_DOMAIN(vide)Votre domaine, derrière un reverse proxy
TRUSTED_PROXIES127.0.0.1,::1IP autorisées à poser X-Forwarded-Proto

gRPC

VariableDéfautDescription
GRPC_TIMESTAMP_WINDOW300Fenêtre HMAC en secondes (±). Dehors : requête rejetée.

Environnement

VariableDéfautDescription
ENVdevelopmentMettez production une fois déployé. Gin passe en release. Compose le pose.
CORS_ORIGINShttp://localhost:5173Origines CORS. Inutile dès que le frontend est embarqué (Docker, binaire).

Les trois lignes à poser

.env bash
POSTGRES_PASSWORD=$(openssl rand -base64 32)
JWT_SECRET=$(openssl rand -base64 32)
NOTIFICATION_ENCRYPTION_KEY=$(openssl rand -base64 32)

Tout le reste a déjà une valeur. Un Compose standard n’a besoin que de ça.