Skip to content

Installation

Docket ships as a single Go binary backed by one PostgreSQL database. There are two ways to install it: Docker Compose (recommended for getting started) or building from source.

This is the fastest path. You need Docker and Docker Compose.

Terminal window
git clone https://git.bcnelson.dev/bcnelson/docket.git
cd docket
docker compose up -d

The compose stack starts:

  • PostgreSQL 15 with persistent storage (volume pgdata).
  • Docket, which runs migrations on startup and exposes the HTTP server on :8080.

Continue with First run to create the initial admin user.

You need Go 1.26+ and Node.js 22+ (to build the embedded React frontend), plus a running PostgreSQL 15+ instance.

Terminal window
git clone https://git.bcnelson.dev/bcnelson/docket.git
cd docket
just build

just build compiles the frontend, embeds it via go:embed, then builds the Go binary. The resulting ./docket binary is self-contained.

Point it at your database and start the server:

Terminal window
export DOCKET_DATABASE__URL="postgres://docket:secret@localhost:5432/docket?sslmode=disable"
./docket migrate up
./docket serve

See Configuration for the full set of settings.

ComponentMinimum
PostgreSQL15+ (with pgvector extension; auto-installed by migrations)
Go (build only)1.26.1
Node.js (build only)22
DiskMostly used by attachments — sized to your retention policy

Docket is stateless: any instance can serve any request, so horizontal scaling is just running more copies behind a load balancer pointed at the same database.