Documentation
Everything you need to install, configure, and run bum.pt.
Quick Start
Get bum.pt running in under 5 minutes:
git clone https://github.com/Berg-io/bum.pt.git
cd bum.pt
cp .env.example .env
docker compose up -dOpen https://localhost and log in with the default credentials:
Email: admin@itmonitor.local
Password: admin123
Change the default password immediately after first login.
Requirements
- Docker and Docker Compose
- 1 CPU core, 512 MB RAM minimum
- Ports 80/443 available (configurable)
Installation
bum.pt is distributed as a Docker image. The included docker-compose.yml sets up the app, a Caddy reverse proxy (HTTPS), and a cron scheduler.
# Clone the repository
git clone https://github.com/Berg-io/bum.pt.git
cd bum.pt
# Copy and edit configuration
cp .env.example .env
# Generate secure secrets
# Linux/macOS:
sed -i "s/JWT_SECRET=.*/JWT_SECRET=\"$(openssl rand -hex 32)\"/" .env
sed -i "s/CRON_SECRET=.*/CRON_SECRET=\"$(openssl rand -hex 32)\"/" .env
# Build and start
docker compose up -dConfiguration
All configuration is done via environment variables in the .env file.
Application
| Variable | Description | Default |
|---|---|---|
| NEXT_PUBLIC_APP_NAME | App name in the UI | bum.pt |
| APP_LANGUAGE | Default language | en |
| APP_PORT | Exposed port (Docker) | 3000 |
| JWT_SECRET | JWT signing secret | (change!) |
| CRON_SCHEDULE | Version check frequency | 0 0 */6 * * * |
| ADMIN_EMAIL | Super admin email | admin@itmonitor.local |
| ADMIN_PASSWORD | Super admin password | admin123 |
License Key
bum.pt runs in Community Edition by default (up to 25 monitored items). To unlock unlimited items, SSO, and API keys, you need a Professional license.
Activating your license
- Purchase a Professional license at bum.pt
- Copy the license key from your email or Polar customer portal
- Add it to your
.env:
LICENSE_KEY="BUM_your_license_key_here"- Restart your container:
docker compose restartThe license is validated automatically. If the key is valid, Professional features are unlocked immediately.
What happens when the license expires?
The app gracefully degrades to Community Edition. Your data is never lost. Renew your license to restore Professional features.
Database
bum.pt supports 4 database engines:
- SQLite (default) — no extra setup
- PostgreSQL — Docker container included
- MariaDB — Docker container included
- MSSQL — external server (Professional)
Set DB_TYPE and DATABASE_URL in your .env. See the README for full examples.
HTTPS / TLS
Caddy is included as a reverse proxy and handles HTTPS automatically. Three TLS modes are available:
- Self-signed (default) — for development and internal networks
- Custom certificates — place your
.crtand.keyin thecerts/folder - Let's Encrypt — automatic certificates for public domains
Updating
docker compose down
docker compose build --no-cache
docker compose up -dDatabase migrations are applied automatically on startup. Your data and settings are preserved.
FAQ
Is my data sent to the cloud?
No. bum.pt is fully self-hosted. The only external call is license key validation (once every 7 days), which sends only the license key to verify its validity.
What if my server has no internet?
The license validation result is cached for 14 days. If your server is offline, the cached result is used. After 14 days without validation, the app falls back to Community Edition until connectivity is restored.
Can I switch databases after setup?
Yes. Export your data using the admin backup feature, change the database configuration in your .env file, restart, and restore the backup.
How do I cancel my subscription?
You can cancel anytime from your Polar customer portal. Your license remains active until the end of the billing period.