bazel-remote vs Silo
bazel-remote
github.comSilo
github.comSide by side
| Figure | bazel-remote | Silo |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Web | — | Yes |
| macOS | Yes | — |
| Linux | Yes | Yes |
| API | Yes | — |
| Self-hosted | Yes | Yes |
| Plans published | 1 | 1 |
| Spec score · Build Cache Software | 8.3 (#4) | 7.3 (#21) |
| Authentication | Authentication options include basic .htpasswd-style authentication and mutual TLS; LDAP authentication is experimental, and only one mechanism can be used at a time. | Silo supports HTTP Basic and OIDC/Bearer authentication with read-only and read-write role mapping. |
| Deployment | The project publishes Docker images on Docker Hub and Quay.io, documents Docker Compose and Kubernetes examples, and can be built as a standalone Linux binary. | Silo is distributed as a fat JAR and a multi-architecture Docker image for linux/amd64 and linux/arm64. |
| Purpose | bazel-remote is an HTTP/1.1 and gRPC server for use as a remote build cache for Bazel and other REAPI clients, or as part of a remote execution service. | Silo is a self-hosted HTTP server that speaks the Gradle build cache protocol and replaces the end-of-life Gradle Remote Build Cache Node. |
| Storage | Cache contents can be stored on disk with a configurable maximum size, and least recently used files are deleted to enforce the limit. | Filesystem storage is implemented, while S3 and GCS are listed as roadmap items. |
Plans
In their own words
bazel-remote
bazel-remote is free, Apache-2.0-licensed open-source software that runs as a self-hosted HTTP/1.1 and gRPC server for Bazel remote caching and other REAPI clients. Cache data can stay on disk with a configured maximum size; least recently used files are removed when that limit is reached. Storage backends include S3, Google Cloud Storage, and an experimental Azure Blob Storage proxy. The server exposes HTTP REST endpoints and REAPI v2 ActionCache, ContentAddressableStorage, Capabilities, and Byte Stream services over gRPC. Zstandard-compressed CAS blobs can reduce network use and increase effective cache capacity. Prometheus metrics are available for HTTP and gRPC endpoints. Deployment options include Docker images, Docker Compose, Kubernetes examples, or a standalone Linux binary, including ARM64 Docker deployments such as Raspberry Pi. Authentication supports .htpasswd-style credentials or mutual TLS; LDAP is experimental, and only one mechanism can be active. TLS settings are configurable. The default permits unauthenticated access, so operators must configure protection.