This repo provides build rules to compile Redis Stack binaries from source for the Please build system.
Additionally, pre-built Redis Stack Binary artifacts are available for download from the GitHub release assets.
These are intended for use in sandboxed or hermetic build systems (like Please), where installing via apt or building from source on the fly isn't ideal. This setup is perfect for SAT frameworks, CI pipelines, or constrained container environments.
| Redis Stack Version | Supported OS | C Library | Architecture | Download Link |
|---|---|---|---|---|
| 7.4.2 | Linux | glibc | x86_64 | Download |
| 7.4.2 | Linux (Alpine) | musl (static) | x86_64 | Download |
Each .tar.gz archive contains the following Redis Stack binaries:
redis-serverredis-cliredis-sentinelredis-benchmarkredis-check-aofredis-check-rdb
glibc binaries are dynamically linked against glibc and OpenSSL 3. They are compatible with:
- Ubuntu 22.04+
- Debian 11+
- Fedora 36+
- Arch Linux
musl binaries are statically linked and compatible with:
- Alpine Linux (all versions)
- Any musl-based Linux distribution
- Can also run on glibc systems as a fallback
Alpine-compatible binaries are now available!
The build system supports both glibc (standard Linux) and musl (Alpine Linux) builds:
- glibc builds (default): Dynamically linked, works on Ubuntu, Debian, Fedora, etc.
- musl builds: Statically linked, works on Alpine Linux and other musl-based systems
Install the following packages on your build system:
sudo apt-get install musl-tools musl-devNote: Building with TLS support (BUILD_TLS=yes) requires static OpenSSL libraries for musl, which are not readily available on Ubuntu/Debian. The musl build currently disables TLS and uses libc malloc instead of jemalloc to ensure a fully static build without external dependencies.
redis_stack(
name = "redis_stack_alpine",
version = "7.4.2",
libc = "musl",
visibility = ["PUBLIC"],
)Then build:
plz build //binaries/v7.4.2:redis_stack_musl-
Add the plugin to your project
In
plugins/BUILD:plugin_repo( name = "redis", owner = "jackmarsh", revision = "v0.0.1", )
-
Update your
.plzconfigAdd the following section:
[Plugin "redis"] Target = //plugins:redis
-
Use the Redis Stack build rules in your project
After setting up the plugin, you can use the
redis_stackbuild rule to include Redis Stack binaries in your project. Example:subinclude("///redis//build_defs:redis") redis_stack( name = "redis_stack", version = "7.4.2", visibility = ["PUBLIC"], )
This will build the specified version of Redis Stack binaries from source.
If you prefer not to build Redis Stack from source, you can directly download pre-built binaries from the GitHub release assets.
Example:
remote_file(
name = "redis",
url = "https://github.com/jackmarsh/redis/releases/download/v0.0.1/redis-7.4.2-linux_x86_64.tar.gz",
hashes = ["<hash of the file>"], # Optional
)You can find pre-built binaries for supported OS and architecture combinations in the release page.
You can find all available versions and corresponding binaries on the releases page.
If you need a pre-built binary for a specific Redis Stack version, operating system, or architecture that is not currently included in the release assets, feel free to reach out or open an issue.
We're happy to consider adding additional prebuilt binaries to future releases!