Self-hosted Node.js/Express + SQLite (WAL) API server and dashboard for tracking blocked bots and user agents. Features: - POST /api/v1/submit — batch ingest from WordPress plugin - GET /api/v1/stats — aggregated stats with 30s cache - GET /api/v1/stream — SSE live event feed - GET /api/v1/health — health check endpoint - Cyan/blue terminal-style dashboard with live feed, bar charts, 24h activity - Docker Compose setup on port 3001 with persistent SQLite volume - Bearer token auth with constant-time comparison Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
24 lines
503 B
YAML
24 lines
503 B
YAML
services:
|
|
bot-api:
|
|
build: .
|
|
container_name: bot-api
|
|
restart: unless-stopped
|
|
ports:
|
|
- "3001:3001"
|
|
volumes:
|
|
- bot-data:/data
|
|
environment:
|
|
- PORT=3001
|
|
- DB_PATH=/data/bots.db
|
|
- NODE_ENV=production
|
|
- API_TOKEN=${API_TOKEN:-change-me-to-a-long-random-string}
|
|
healthcheck:
|
|
test: ["CMD", "wget", "-qO-", "http://localhost:3001/api/v1/health"]
|
|
interval: 30s
|
|
timeout: 5s
|
|
retries: 3
|
|
|
|
volumes:
|
|
bot-data:
|
|
driver: local
|