Skip to content

Customer Deployment

The deploy/ package is a slim, image-based bundle for installing RedCloud on a customer host without building from source.

FilePurpose
docker-compose.ymlImage-based Compose (pulls ${REDCLOUD_IMAGE}); two services — postgres and redcloud (port 9900), with ENVIRONMENT=production
.env.exampleCustomer environment template (license, secrets, image)
setup.shOne-time guided setup
transfer.shPush the install to a remote host over SSH
cicd/GitHub Actions and GitLab CI templates

Option A — Guided setup on the target host

Section titled “Option A — Guided setup on the target host”
Terminal window
cd deploy
./setup.sh

setup.sh checks Docker and Compose, creates the credentials/ and out/ directories, copies .env.example to .env, and auto-generates strong values for HMAC_KEY, ENCRYPTION_KEY, API_KEY, and DB_PASSWORD. It then reminds you to:

  1. Set your LICENSE_KEY (format RC-...) in .env.
  2. Place your cloud credential at credentials/sa-key.json.

Finally it runs docker compose up -d. Open http://localhost:9900.

Option B — Remote transfer from your machine

Section titled “Option B — Remote transfer from your machine”
Terminal window
cd deploy
./transfer.sh user@host [/opt/redcloud] [--no-start]

transfer.sh rsyncs the source (excluding caches, scans, .env, and credentials), separately copies your .env and credential files, then runs docker compose up -d --build on the target and health-checks http://host:9900/health.

Target requirements: Docker + Compose v2, SSH access, and ports 9900 (and 7700/5432 if you run them locally) free.

The customer template requires these before first start:

VariableNotes
LICENSE_KEYYour RC-... license key
HMAC_KEY, API_KEY, ENCRYPTION_KEYGenerated by setup.sh, or set manually
DB_PASSWORDStrong database password
REDCLOUD_IMAGEThe image to pull (defaults to the latest published tag)

See the full Configuration reference for everything else.

  • docker compose ps shows redcloud healthy.
  • GET http://host:9900/health returns 200.
  • You can sign in and the license shows valid.