Deploy from GitHub Container Registry
Run the systemprompt.io gateway from the public GHCR image with Docker Compose or docker run.
On this page
The gateway is published to GHCR as ghcr.io/systempromptio/systemprompt-template: a single compiled Rust binary plus the services/ config tree. It is the same image that backs the Helm chart and the PaaS templates, and anonymous pulls are allowed.
Pick GHCR when you want a public, rate-limit-free OCI pull source, or you already authenticate to ghcr.io.
Quickstart: Compose
git clone https://github.com/systempromptio/systemprompt-template
cd systemprompt-template
cp .env.example .env # set ANTHROPIC_API_KEY / OPENAI_API_KEY / GEMINI_API_KEY
# Edit docker-compose.yml: comment `build: .` and uncomment `image: ghcr.io/...:latest`
docker compose up
Open http://localhost:8080.
Quickstart: docker run
Provide a reachable Postgres via DATABASE_URL and at least one AI key:
docker run --rm -p 8080:8080 \
-e DATABASE_URL=postgres://user:pw@host.docker.internal:5432/systemprompt \
-e ANTHROPIC_API_KEY=sk-ant-... \
ghcr.io/systempromptio/systemprompt-template:latest
On first boot the entrypoint writes the docker profile, waits for Postgres, runs migrations, and starts the API on port 8080.
Tags and verification
latest tracks the most recent release; v* releases also publish <major>.<minor>.<patch>, <major>.<minor>, and <major> tags. Versioned tags are signed with cosign (keyless, GitHub OIDC).
For tag details, signature verification, and authenticated pulls, see the full GHCR recipe in the template repository. For GHCR itself (auth, rate limits, private forks), see the GitHub Container Registry documentation.