Skip to content

Docker Compose Deployment

The simplest way to run Sparrow. No need to clone the repo — download the compose file and start it.

Terminal window
curl -O https://raw.githubusercontent.com/sarathsp06/sparrow/main/deploy/docker-compose.yml
SPARROW_ENCRYPTION_KEY=$(openssl rand -hex 32) docker compose up -d

The server is available at:

To stop:

Terminal window
docker compose down # stop containers
docker compose down -v # stop and delete data

Pre-built multi-arch images (linux/amd64, linux/arm64) are published to GitHub Container Registry on every release:

Terminal window
docker pull ghcr.io/sarathsp06/sparrow:latest

You can also pin to a specific version:

Terminal window
docker pull ghcr.io/sarathsp06/sparrow:0.2.0

The repo contains a docker-compose.dev.yml that builds from source. This is useful for development:

Terminal window
git clone https://github.com/sarathsp06/sparrow.git
cd sparrow
docker compose -f docker-compose.dev.yml up -d

Or build without Docker:

Terminal window
make build-with-ui
export DATABASE_URL=postgres://user:pass@localhost:5432/sparrow?sslmode=disable
make migrate
SPARROW_SERVE_UI=true ./build/server-*

Sparrow exports traces, metrics, and logs via OpenTelemetry (OTLP). Set OTEL_EXPORTER_OTLP_ENDPOINT to point to your collector:

Terminal window
OTEL_EXPORTER_OTLP_ENDPOINT=http://your-otel-collector:4318