Deploy these docs
Pinchana/pinchana-docs is a static Astro Starlight site. It has no runtime dependency on Pinchana API or Pinchana Web.
Validate the source
Section titled “Validate the source”git clone https://github.com/Pinchana/pinchana-docs.gitcd pinchana-docsbun install --frozen-lockfilebun run checkbun run buildThe static output is written to dist/.
Docker Compose deployment
Section titled “Docker Compose deployment”The repository includes a two-service Compose setup:
docs-buildusesoven/bun:1.3.14-debian, installs the frozen lockfile, and runs the Astro build into a nameddocs-distvolume.docsusesnginx:1.29-alpineand serves that read-only build output.
Start it with:
docker compose up --detachdocker compose psBy default Nginx binds to:
127.0.0.1:4321Override with DOCS_BIND_ADDRESS and DOCS_HOST_PORT if needed.
Reverse proxy
Section titled “Reverse proxy”For the canonical deployment:
https://docs.pinchana.cc -> http://127.0.0.1:4321Terminate TLS at the host reverse proxy. The docs service itself contains no application secrets and should not need access to the API/Web private environments.
Update
Section titled “Update”After pulling documentation changes, recreate the Compose project so the one-shot builder produces a new docs-dist volume content before Nginx serves it:
git pull --ff-onlydocker compose up --detach --force-recreate docs-build docsIf dependency files changed, the named docs-node-modules volume can retain old installation state. The build still runs bun install --frozen-lockfile; if diagnosing dependency corruption, remove only the docs-specific dependency/cache volumes and rebuild, not unrelated Pinchana application volumes.
Authoring source of truth
Section titled “Authoring source of truth”These docs intentionally cover public Pinchana API and Pinchana Web behavior. Before publishing a change, verify commands/defaults against their current repositories and run both bun run check and bun run build here.