Getting started
Installation
Forge ships as a single container image on GHCR. The whole deployment is one service and one volume.
Docker Compose
services:
forge:
image: ghcr.io/bndct-devops/forge:latest
container_name: forge
ports:
- "8081:8081"
volumes:
- ./data:/data
restart: unless-stopped
Then docker compose up -d and open http://your-host:8081.
The first visit walks you through creating the admin account —
see first-run setup.
The volume
/data holds the SQLite database (WAL mode), the JWT signing secret, and the
Web Push keys. Back up that one directory and you have everything. Optional nightly
snapshots land in /data/backups — enable them in
Settings → Data as an admin.
Environment variables
| Variable | Default | Purpose |
|---|---|---|
FORGE_SECRET_KEY | auto-generated, persisted | JWT signing secret |
FORGE_DATA_DIR | /data | SQLite database + keys |
FORGE_PORT | 8081 | HTTP port (dev convenience; the container binds 8081) |
FORGE_OIDC_* | disabled | Optional single sign-on — see SSO |