Ultra-lightweight, self-hosted error tracking server. Sentry SDK compatible. ~50MB memory footprint
3.1K
Ultra-lightweight, self-hosted error tracking system compatible with any Sentry SDK. Single binary, minimal dependencies, built in Rust.
| Tag | Backend | Use case |
|---|---|---|
latest, vX.Y.Z | SQLite | Zero-dependency setup, small deployments |
postgres, vX.Y.Z-postgres | PostgreSQL | Production, multi-instance deployments |
services:
server:
image: rustrak/rustrak-server:latest
ports:
- "8080:8080"
volumes:
- rustrak_data:/data
environment:
SESSION_SECRET_KEY: ${SESSION_SECRET_KEY}
CREATE_SUPERUSER: [email protected]:changeme123
volumes:
rustrak_data:
SESSION_SECRET_KEY=$(openssl rand -hex 32)
docker compose up -d
services:
server:
image: rustrak/rustrak-server:postgres
ports:
- "8080:8080"
environment:
DATABASE_URL: postgres://user:pass@db:5432/rustrak
SESSION_SECRET_KEY: ${SESSION_SECRET_KEY}
CREATE_SUPERUSER: [email protected]:changeme123
| Variable | Required | Description |
|---|---|---|
SESSION_SECRET_KEY | Yes | 64-char hex string — generate with openssl rand -hex 32 |
DATABASE_URL | PostgreSQL only | PostgreSQL connection string |
CREATE_SUPERUSER | No | email:password to bootstrap the first admin user |
PORT | No | HTTP port (default: 8080) |
RUST_LOG | No | Log level (info, debug, warn, error) |
Point any Sentry SDK to your Rustrak instance:
# Python
import sentry_sdk
sentry_sdk.init(dsn="http://<api-token>@your-server:8080/1")
// JavaScript
Sentry.init({ dsn: "http://<api-token>@your-server:8080/1" });
No code changes needed if you're migrating from Sentry.
| Package | Description |
|---|---|
rustrak/rustrak-ui | Optional web dashboard |
@rustrak/client | Type-safe TypeScript client |
@rustrak/mcp | MCP server for Claude, Cursor, Continue.dev |
Content type
Image
Digest
sha256:35d7adcfd…
Size
17 MB
Last updated
about 2 hours ago
docker pull rustrak/rustrak-server