Setup script¶
The automatic setup script is the recommended path when the server has internet access.
What it does¶
- Checks Docker and Docker Compose, installs them if missing
- Downloads
docker-compose.prod.ymland.env.examplefrom the licence portal - Asks for registry credentials (Community: leave empty)
- Asks for base URL (domain with
https://or IP) - Asks optionally for a license key
- Generates all secrets (DB password, JWT key, field encryption key, Redis password)
- Writes
.env - Pulls all images
- Starts the stack
Run it¶
As root or with sudo:
If curl is missing:
What you'll see¶
[1/7] Checking prerequisites ...
✓ Docker 27.3.1
✓ Docker Compose 2.29.2
[2/7] Creating directories ...
✓ /opt/vesana
[3/7] Loading compose file ...
[4/7] Inputs:
Base URL: https://monitoring.example.com
License key (Enter = Community): _
[5/7] Generating secrets ...
FIELD_ENCRYPTION_KEY: dQw4w9WgXcQ-tH...
⚠ Save this externally NOW (password manager, off-site backup)!
[6/7] Pulling images ...
[7/7] Starting containers ...
✓ vesana-api ... healthy
✓ vesana-receiver ... healthy
✓ vesana-worker-0 ... running
✓ vesana-frontend ... healthy
→ Open browser: https://monitoring.example.com/setup
Save the FIELD_ENCRYPTION_KEY¶
Lose the key, lose the data
The FIELD_ENCRYPTION_KEY protects encrypted fields (like SNMP communities). Lose the key and that data is permanently unrecoverable.
Right after install:
- Copy the key from the setup output
- Store in a password manager (Bitwarden, 1Password, KeePass)
- Print or back it up offline as well
- Don't put it in the same volume as the database backup
After setup completes: continue with the setup wizard in your browser.
Re-run¶
The setup script isn't designed for re-runs. To reconfigure:
- For
.envchanges: edit the file directly, thendocker compose -f /opt/vesana/docker-compose.prod.yml up -d - For a fresh install:
docker compose -f /opt/vesana/docker-compose.prod.yml down -v(deletes all data!) then run setup again
Next¶
- Setup wizard in the browser — admin account, tenant, SMTP
- Enable backup — before going productive