A comprehensive management suite for Prometheus Blackbox Exporter targets, probers, and metrics with persistent SQLite storage.
- Centralized Management: Manage targets, probers, and groups in one place.
- Persistent Storage: All configuration is saved to a local SQLite database (
.dbfile). - Dockerized: Easy deployment with persistent volumes.
- Visual Dashboard: Statistics and event logging.
- Node.js (v18+) for local development.
- Docker for containerized deployment.
To run PBXR with persistent data storage, use a Docker volume mount mapping to /app/data.
docker build -t pbxr .Run the container, mounting a local folder to persist the database file.
Linux / Mac:
docker run -d \
-p 3000:3000 \
-v $(pwd)/data:/usr/src/app/data \
--name pbxr \
pbxrWindows (PowerShell):
docker run -d `
-p 3000:3000 `
-v ${PWD}/data:/usr/src/app/data `
--name pbxr `
pbxrThe application will be available at http://localhost:3000.
All data will be stored in your local ./data/pbxr.db file.
npm installnpm run buildnpm startThe server will start on port 3000. Data will be stored in data/pbxr.db within the project folder.
To run the frontend with hot-reload and proxy to backend:
- Start backend:
node server.js - In another terminal, start frontend:
npm run dev
The application uses SQLite for storage.
- Location:
data/pbxr.dbinside the container (mapped to host). - Format: JSON blob stored in
kv_storetable. - Backup: Simply copy the
.dbfile to back up your entire configuration.