Installation
The easiest way to try out Chorus is the standalone installation. The standalone installation requires no extra tools and has zero dependencies. The standalone version of Chorus does not persist any data between restarts, so it can be used only for education. For production-like environments, do not use the standalone installation, but instead use Helm chart or Docker.

Helm Chart
See the Helm chart README for installation instructions, configuration examples, and available options.
Quick install:
helm install <release-name> oci://harbor.clyso.com/chorus/chorus -f values.yaml
For more information, see Configuration section.
Docker compose
See the docker-compose example on GitHub.
Management CLI
Chorus provides a CLI called chorctl as an alternative to the web UI.
Installation steps:
- Download a suitable
chorctl_*binary from the latest release page. - Unpack the binary and add it to the system
PATH.
Alternatively, use homebrew (for MacOS and Linux only):
brew install clyso/tap/chorctl
Usage:
- By default,
chorctluseslocalhost:9670to call the management GRPC API. To override this default, use environment variables:Orexport CHORUS_ADDRESS=<grpc api ip or domain>:<port>-aor--addressflag:chorctl -a '<grpc api ip or domain>:<port>' - Print help to see available commands and flags:
chorctl help - See the replication dashboard:
chorctl dash - Manage replications per user or per bucket with the
chorctl replcommandchorctl repl -h
Chorus - Standalone Version
The standalone version does not persist data, so it cannot be used for production.
Chorus provides a standalone version that is suitable as a local development playground. The standalone version is a single binary that contains all Chorus components, along with embedded in-memory S3 storages for test purposes:
- Chorus proxy running on port
9669. - Management web UI on port
9672. - Management GRPC API on port
9670. - Management REST API on port
9671. - 2 Fake s3 storage on ports
9680[MAIN] and9681.
Chorus Installation
- Download a suitable
standalone_*binary from the latest release page. - Unpack the binary and add it to the system
PATH. - Run
chorus -horchorus -helpto print help. Usage: If no flags and arguments are passed to the command, thenchoruswill start with embedded fake S3 storages. Modify Chorus config to run it against custom storages:
Modifying Chorus Configuration
- Print the current fake configuration into a file by running the
chorus print-config > my-conf.yamlcommand - Open
my-conf.yamlwith a text editor end replace s3 URLs and credentials. 1. Run Chorus with the new configuration file by running the commandchorus -config ./my-config.yaml.
Alternate Method of Modifying the Chorus Configuration
- Alternatively, put the configuration file in the default Chorus configuration directory,
$HOME/.config/chorus/config.yaml:mkdir -p ~/.config/chorus && mv ./my-config.yaml ~/.config/chorus/config.yaml
Chorus will now use the config by default.