Démarrage rapide
Déployez le Hub Watchflare avec Docker Compose et enrôlez votre premier agent. Cinq étapes et zéro configuration optionnelle vous mènent de l'installation aux métriques en direct en moins de 5 minutes.
Ce guide vous accompagne pour déployer le Hub, créer votre compte admin et connecter votre premier agent.
Prérequis : Docker et Docker Compose v2+ (Linux, macOS ou Windows).
1. Déployer le Hub
Créez un répertoire et entrez-y :
mkdir watchflare && cd watchflare Enregistrez ce qui suit sous docker-compose.yml :
services:
watchflare:
image: ghcr.io/watchflare-io/watchflare:latest
container_name: watchflare
ports:
- "${HUB_PORT:-8080}:8080"
- "${GRPC_PORT:-50051}:50051"
environment:
- POSTGRES_HOST=postgres
- POSTGRES_PORT=5432
- POSTGRES_USER=${POSTGRES_USER:-watchflare}
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD:?Set POSTGRES_PASSWORD in .env}
- POSTGRES_DB=${POSTGRES_DB:-watchflare}
- POSTGRES_SSLMODE=disable
- GRPC_PORT=${GRPC_PORT:-50051}
- JWT_SECRET=${JWT_SECRET:?Set JWT_SECRET in .env}
- NOTIFICATION_ENCRYPTION_KEY=${NOTIFICATION_ENCRYPTION_KEY:?Set NOTIFICATION_ENCRYPTION_KEY in .env}
- TLS_MODE=${TLS_MODE:-auto}
- TLS_PKI_DIR=/var/lib/watchflare/pki
- GRPC_TIMESTAMP_WINDOW=${GRPC_TIMESTAMP_WINDOW:-300}
- ENV=production
- COOKIE_SECURE=${COOKIE_SECURE:-}
- COOKIE_DOMAIN=${COOKIE_DOMAIN:-}
- TRUSTED_PROXIES=${TRUSTED_PROXIES:-127.0.0.1,::1}
volumes:
- pki_data:/var/lib/watchflare/pki
depends_on:
postgres:
condition: service_healthy
networks:
- watchflare_net
restart: unless-stopped
postgres:
image: timescale/timescaledb:latest-pg16
container_name: watchflare-postgres
environment:
POSTGRES_USER: ${POSTGRES_USER:-watchflare}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:?Set POSTGRES_PASSWORD in .env}
POSTGRES_DB: ${POSTGRES_DB:-watchflare}
volumes:
- pgdata:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER:-watchflare}"]
interval: 10s
timeout: 5s
retries: 5
networks:
- watchflare_net
restart: unless-stopped
volumes:
pgdata:
driver: local
pki_data:
driver: local
networks:
watchflare_net:
driver: bridge Créez un fichier .env dans le même répertoire avec les trois secrets obligatoires :
printf "POSTGRES_PASSWORD=%s\nJWT_SECRET=%s\nNOTIFICATION_ENCRYPTION_KEY=%s\n" \
"$(openssl rand -base64 32)" \
"$(openssl rand -base64 32)" \
"$(openssl rand -base64 32)" > .envRemarque
Sous macOS, utilisez l’onglet Linux, car openssl est disponible par défaut.
Démarrez la stack :
$ docker compose up -d [+] Running 3/3 ✔ Network watchflare_watchflare_net Created ✔ Container watchflare-postgres Started ✔ Container watchflare Started
Remarque
Le Hub génère automatiquement une CA TLS auto-signée au premier démarrage. Cette CA sécurise la communication gRPC avec les agents. Aucune configuration manuelle de certificats n’est nécessaire.
Le Hub sera disponible à l’adresse http://your-host:8080 en quelques secondes.
2. Créer votre compte admin
Ouvrez http://your-host:8080 dans votre navigateur. Sur une installation neuve, vous êtes automatiquement redirigé vers la page de configuration du compte. Saisissez votre e-mail et un mot de passe fort.
3. Ajouter un hôte
- Dans la barre latérale, cliquez Hosts, puis Add host.
- Saisissez un nom (par ex.
web-01). Saisissez éventuellement l’adresse IP de l’hôte. Le Hub vous avertira si l’agent se connecte depuis une IP différente. Laissez l’IP vide ou cochez Allow registration from any IP pour ignorer entièrement cette vérification. - Cliquez Create Host.
- Copiez le jeton d’enrôlement affiché :
token wf_reg_7f2a9c3e8b4d1a6c5e09f3b2a178e4d9
Attention
Le jeton expire au bout de 24 heures. Installez l’agent avant qu’il n’expire.
4. Installer l’agent
Exécutez l’installeur en une ligne sur l’hôte que vous souhaitez surveiller. Remplacez les espaces réservés par l’IP de votre Hub et le jeton de l’étape précédente.
curl -sSL https://get.watchflare.io | sudo bash -s -- \
--token wf_reg_YOUR_TOKEN \
--host YOUR_HUB_IP \
--port 50051Attention
Remplacez wf_reg_YOUR_TOKEN par le jeton de l’étape précédente et YOUR_HUB_IP par l’adresse IP ou le nom d’hôte de votre Hub.
L’installeur enrôle l’agent, écrit la configuration et démarre le service automatiquement.
5. Voir votre hôte passer en ligne
Revenez à la liste Hosts dans votre navigateur. Le statut de l’hôte passe de pending à online dans les 5 secondes après le démarrage de l’agent.
À partir de là, vous pouvez explorer les métriques en temps réel et les graphiques d’historique. L’inventaire des paquets exécute sa première analyse 60 secondes après le démarrage de l’agent, puis quotidiennement à 03:00.
Prochaines étapes
- Installer l’agent sur d’autres hôtes (Linux ou macOS)
- Configurer HTTPS avec un reverse proxy (Caddy ou Nginx)
- Configurer les alertes (seuils CPU, mémoire, disque, charge et température, plus notifications d’hôte hors ligne)
- Comprendre les variables d’environnement du Hub (ports, modes TLS, sécurité des cookies)