Gradle Build Scan Server
A self-hosted server for receiving and viewing Gradle build scans.
Contributor-focused build and tooling commands are documented on the Bazel workflows page.
Getting Started
Section titled “Getting Started”1. Start the server
Section titled “1. Start the server”docker run -p 8080:8080 -v build-scan-data:/data ghcr.io/lowkeylab/build-scan-server:latest2. Configure your Gradle project
Section titled “2. Configure your Gradle project”Add the Develocity plugin to your settings.gradle.kts:
plugins { id("com.gradle.develocity") version "4.3.2"}
develocity { server = "http://localhost:8080" buildScan { publishing.onlyIf { true } uploadInBackground = false }}3. Run a build
Section titled “3. Run a build”./gradlew buildThe build scan will be uploaded to your server and viewable at http://localhost:8080.
If you want an end-to-end local walkthrough with real UI screenshots, follow the local build scan UI walkthrough.
Docker
Section titled “Docker”Pull and run
Section titled “Pull and run”docker pull ghcr.io/lowkeylab/build-scan-server:latestdocker run -p 8080:8080 -v build-scan-data:/data ghcr.io/lowkeylab/build-scan-server:latestThe server will be available at http://localhost:8080.
Configuration
Section titled “Configuration”| Variable | Default | Description |
|---|---|---|
DATABASE_URL | sqlite:///data/build_scans.db | SQLite database path |
PORT | 8080 | HTTP listen port |
Mount a volume at /data for persistent storage:
docker run -p 3000:3000 \ -e PORT=3000 \ -v build-scan-data:/data \ ghcr.io/lowkeylab/build-scan-server:latestBuild locally
Section titled “Build locally”bazel run //build-scan/server/src:load_image # loads as local/build-scan-server:latestdocker run -p 8080:8080 -v build-scan-data:/data local/build-scan-server:latest