Understand the local Docker stack for Postgres, MinIO, and supporting services.
Last updated June 7, 2026
The root compose.yaml starts development infrastructure:
54329000 (console on 9001)wrkin bucketThe SvelteKit app and collab server run on the host via pnpm dev and pnpm collab:dev.
pnpm db:start # docker compose up
docker compose down To reset local data completely:
pnpm setup -- --reset Set S3_* in .env to match the MinIO defaults from .env.example:
S3_ENDPOINT="http://127.0.0.1:9000"
S3_BUCKET="wrkin"
S3_FORCE_PATH_STYLE="true" Doc uploads, task attachments, and chat attachments are stored in the wrkin bucket. Docs library uploads and previews use the same storage pipeline.
Docs real-time editing requires the Hocuspocus collab server on the host (pnpm collab:dev) and PUBLIC_COLLAB_WS_URL=ws://localhost:1234 in .env.
compose.yaml is for local development only. Production uses compose.prod.yaml with the app image, collab service, Caddy TLS, and backups. See Production deployment.