Reis CLI
Authenticating, deploying and managing Bahriya resources from the command line.
33 articles
Installing Reis
Reis ships as a single self-contained binary. No PHP runtime, no interpreters, and no package managers are required — just download and run.
3 minReis CLI
Reis (Turkish for "captain") is the official Bahriya command-line interface. It lets you manage your entire Bahriya infrastructure from the terminal — creating projects, deploying containers, managing secrets, and automating workflows without opening a browser.
2 minDeploy JSON Configs with Reis (YAML Mode)
Use the Reis CLI to manage JSON configuration files via YAML manifests.
1 minDeploy JSON Configs with Reis (Flag Mode)
Use the Reis CLI to manage JSON configuration files using command-line flags.
1 minDeploy Plain Configs with Reis (Flag Mode)
Use the Reis CLI to manage plain-text configuration files (no schema validation — Reis stores whatever you give it). Plain configs are mounted into a container at a path of your choosing.
1 minDeploy Plain Configs with Reis (YAML Mode)
Use the Reis CLI to manage plain-text configuration files via YAML manifests. Plain configs are stored as-is (no schema validation) and mounted into containers at a path of your choosing.
1 minDeploy Env Files with Reis (Flag Mode)
Use the Reis CLI to manage .env-style files using command-line flags. Env files are key=value pairs (one per line) that get mounted into a container at a path of your choosing.
1 minDeploy Env Files with Reis (YAML Mode)
Use the Reis CLI to manage .env-style files via YAML manifests. Env files are key=value pairs (one per line) that get mounted into containers at a path of your choosing.
1 minAuthentication
Reis authenticates using personal access tokens (PATs). You generate a PAT in the Bahriya console and provide it to Reis.
2 minCommands Reference
Reis commands follow a resource:action naming pattern. Every command that lists or shows resources supports --output table|json|yaml. Most commands that operate on resources accept --org to override the default organisation.
13 minDeploy a cron job with flags
A cron job is a container that runs to completion on a schedule, then exits. Use it for nightly batches, periodic cleanups, hourly imports — anything that runs on a clock instead of continuously.
3 minDeploy a cron job with YAML
A cron job is a container that runs to completion on a schedule, then exits. Use it for nightly batches, periodic cleanups, hourly imports — anything that runs on a clock instead of continuously.
3 minDeploy a worker with flags
A worker container is a long-running background process with no public network exposure — queue consumers, schedulers, stream processors, anything that runs continuously but isn't reachable from outside the project.
2 minDeploy a worker with YAML
A worker container is a long-running background process with no public network exposure. Use it for queue consumers, schedulers that live inside the application, stream processors, and anything else that runs continuously but isn't reachable from outside the project.
2 minDeploy an HTTP container with flags
An HTTP container is a long-running service that accepts incoming requests on a port. Pick this type when you're deploying an API, a web app, or anything else that fronts traffic.
3 minDeploy an HTTP container with YAML
An HTTP container is a long-running service that accepts incoming requests on a port and gets a hostname, TLS, autoscaling, rate limiting, IP allow/deny, and basic auth out of the box. Pick this type when you're deploying an API, a web app, or anything else that fronts traffic.
3 minDeploy Encryption Keys with Reis (Flag Mode)
Create and manage encryption keys directly from the command line using Reis flag-mode commands.
1 minDeploy Encryption Keys with Reis (YAML Mode)
Encryption keys can be declared in your bahriya.yml file under the vaults section and applied with reis apply.
1 minDeploy GPG Keypairs with Reis (Flag Mode)
Create and manage GPG keypairs directly from the command line using Reis flag-mode commands.
1 minDeploy GPG Keypairs with Reis (YAML Mode)
GPG keypairs can be declared in your bahriya.yml file under the vaults section and applied with reis apply.
1 minDeploy Memcached with flags
A managed Memcached instance lives inside a project and is reachable from any container in that project. Pick between a single node (standalone) for caches you can afford to lose and a multi-node cluster for higher capacity and partition tolerance.
2 minDeploy Memcached with YAML
A managed Memcached instance lives inside a project and is reachable from any container in that project. Pick between a single node (standalone) for caches you can afford to lose and a multi-node cluster for higher capacity and partition tolerance.
2 minDeploy SSH Keypairs with Reis (Flag Mode)
Create and manage SSH keypairs directly from the command line using Reis flag-mode commands.
1 minDeploy SSH Keypairs with Reis (YAML Mode)
SSH keypairs can be declared in your bahriya.yml file under the vaults section and applied with reis apply.
1 minDeploy TLS Bundles with Reis (Flag Mode)
Create and manage TLS bundles directly from the command line using Reis flag-mode commands.
1 minDeploy TLS Bundles with Reis (YAML Mode)
TLS bundles can be declared in your bahriya.yml file under the vaults section and applied with reis apply.
1 minDeploy X.509 Certificates with Reis (Flag Mode)
Create and manage X.509 certificates directly from the command line using Reis flag-mode commands.
1 minDeploy X.509 Certificates with Reis (YAML Mode)
X.509 certificates can be declared in your bahriya.yml file under the vaults section and applied with reis apply.
1 minDeploy YAML Configs with Reis (Flag Mode)
Create and manage YAML configs directly from the command line using Reis flag-mode commands.
1 minDeploy YAML Configs with Reis (YAML Mode)
YAML configs can be declared in your bahriya.yml file under the configs section and applied with reis apply.
1 minFlag mode
Every Reis create / update command can be driven directly from the shell — pass each field as a --flag value pair. This is the mode you reach for in scripts, CI jobs, and one-off operations where reaching for a YAML file is overkill.
3 minUsing Reis in CI/CD Pipelines
Reis is designed to work in automated environments. Use environment variables for authentication, JSON output for machine-readable results, and YAML files for declarative deployments.
4 minYAML mode
Reis supports declarative infrastructure management through YAML files. Define your resources in YAML, commit them to version control, and apply them with reis apply -f for repeatable, auditable deployments.
6 min