Command line tool to install RoadRunner binaries and generate configs
This package provides the rr console command for PHP projects that run on RoadRunner: it downloads the RoadRunner server binary and protoc-gen-php-grpc plugin built for your environment and generates a starter .rr.yaml configuration.
composer require spiral/roadrunner-cliDownload the latest RoadRunner binary for your operating system and architecture into the project root, along with an example .rr.yaml:
vendor/bin/rr get-binaryThen start the server:
./rr serveSee the RoadRunner documentation for the configuration reference.
get-binary(orget) - allows to install the latest version of the RoadRunner compatible with your environment (operating system, processor architecture, runtime, etc...). Also, this command creates an example.rr.yamlconfiguration file. If the command is used without thepluginandpresetoptions, a configuration with the default plugins (rpc,server,http,jobs,kv,metrics) is created. Using thepluginoption (shortcutp) can create an example configuration file with only plugins needed. For example, with http plugin only:get-binary -p http, http and jobs:get-binary -p http -p jobs. Available plugins:amqp,beanstalk,boltdb,broadcast,endure,fileserver,grpc,http,jobs,kv,logs,metrics,nats,otel,redis,reload,rpc,server,service,sqs,status,tcp,temporal,websockets. Using thepresetoption can create an example configuration file with popular plugins for different typical tasks. For example, with web preset:get-binary --preset web. Available presets:web(contains pluginshttp,jobs). Use--no-configto skip the configuration file.make-config- creates the.rr.yamlconfiguration file without downloading the binary. Accepts the samepluginandpresetoptions.download-protoc-binary- allows to install the latest version of theprotoc-gen-php-grpcfile compatible with your environment (operating system, processor architecture, runtime, etc...).versions- displays a list of available RoadRunner binary versions.
The binary commands accept --filter (-f, version constraint), --stability (-s), --os (-o), --arch (-a) and --location (-l, target directory) options. Releases are fetched from the GitHub API; set the GITHUB_TOKEN environment variable to avoid its rate limits, and RR_GITHUB_API_URL to use another API endpoint (GitHub Enterprise, a mirror; defaults to https://api.github.com).