2026-09-13 15:11:30 +03:00
|
|
|
# Copy to .env and edit if needed — defaults below work out of the box
|
|
|
|
|
# with control-api/control-api.docker.example.yaml (openstack.mode: mock,
|
|
|
|
|
# no OpenStack credentials needed).
|
|
|
|
|
#
|
|
|
|
|
# cp .env.example .env
|
|
|
|
|
# cp control-api/control-api.docker.example.yaml control-api/control-api.docker.yaml
|
|
|
|
|
# docker compose up -d --build
|
|
|
|
|
|
|
|
|
|
COMPOSE_PROFILES=control-plane,dashboard,prober,validator
|
|
|
|
|
|
|
|
|
|
# --- prober (must match a site_id in the mounted control-api config) ---
|
|
|
|
|
PROBER_SITE_ID=site-1
|
|
|
|
|
|
|
|
|
|
# --- validator-agent (must match a validator_id in the mounted control-api config) ---
|
|
|
|
|
VALIDATOR_AGENT_VALIDATOR_ID=validator_01
|
|
|
|
|
|
2026-10-01 11:35:24 +03:00
|
|
|
# --- authentication (empty = that level stays open; services log a warning) ---
|
|
|
|
|
# Generate each secret with: openssl rand -hex 32
|
|
|
|
|
# control-api admin token (protects /api/v1/admin/*) and the dashboard's copy of it:
|
|
|
|
|
CONTROL_API_ADMIN_TOKEN=
|
|
|
|
|
ADMIN_DASHBOARD_CONTROL_API_TOKEN=
|
|
|
|
|
# control-api agent token (protects result/event writes); the same value goes
|
|
|
|
|
# to prober and validator-agent:
|
|
|
|
|
CONTROL_API_AGENT_TOKEN=
|
|
|
|
|
# Dashboard login (both must be set to enable it) and cookie-signing key:
|
|
|
|
|
ADMIN_DASHBOARD_USERNAME=
|
|
|
|
|
ADMIN_DASHBOARD_PASSWORD=
|
|
|
|
|
ADMIN_DASHBOARD_SESSION_SECRET=
|
|
|
|
|
|
2026-09-13 15:11:30 +03:00
|
|
|
# ADMIN_DASHBOARD_CONTROL_API_URL / PROBER_CONTROL_API_URL /
|
|
|
|
|
# VALIDATOR_AGENT_CONTROL_API_URL default to http://control-api:8080 in
|
|
|
|
|
# docker-compose.yml (same Docker network) — only set here to override.
|