Product

Install in 15 minutes

Docker Compose on any Linux server. No Kubernetes, no Helm charts, no cloud marketplace lock-in.

Requirements#

ComponentRequirement
OSAny Linux with Docker (Ubuntu 22.04+ recommended)
DockerDocker Engine 24+ and Docker Compose v2
RAM4 GB minimum, 8 GB recommended
Disk20 GB (grows with snapshots and reports)
NetworkOutbound HTTPS to cloud APIs + license server

Quick-start (one command)#

After purchase we send you a read-only GHCR pull token and your license file. The installer script does everything — creates the data directories, logs in to the private registry, generates your secrets, pulls the images, and starts the stack:

curl -fsSL https://get.quantumitpartners.com/cco/install.sh \ | bash -s -- --token <YOUR_PULL_TOKEN>

Add a domain and SSL mode to provision HTTPS in the same step:

curl -fsSL https://get.quantumitpartners.com/cco/install.sh | bash -s -- \ --token <YOUR_PULL_TOKEN> \ --domain cco.example.com \ --ssl lets_encrypt \ --email ops@example.com

The script is safe to re-run — existing secrets in /opt/cco/.env are preserved on upgrade.

Tip
On first start, the setup wizard opens at your configured URL. Create your admin account and upload the license file we send after purchase.

What's in the box#

Docker Compose brings up six application containers:

  • ✓Django + Gunicorn (API backend)
  • ✓Celery worker (background tasks)
  • ✓Celery Beat (scheduled tasks)
  • ✓PostgreSQL 16 (database)
  • ✓Redis (cache + task queue)
  • ✓Nginx (web server + static files)

A seventh Certbot helper container is added only when you choose Let's Encrypt, to renew certificates. Images ship from the private registry as ghcr.io/quantumitpartners/cco-django and cco-nginx. All data persists under /opt/cco/ via bind mounts — back up, restore, and migrate by copying that directory.

SSL / HTTPS#

SSL is chosen at install time with the --ssl flag (or later in .env via SSL_MODE) — no separate nginx config to edit:

Let's Encrypt (auto-renewing)
--ssl lets_encrypt --domain your.domain.com --email you@example.com — issues a certificate on first run and adds a Certbot container that keeps it renewed.
Self-signed or your own certificate
--ssl self_signed generates a certificate for testing; --ssl uploaded lets you supply your own from Settings → SSL.
Behind a reverse proxy
Use --ssl none and place CCO behind your existing reverse proxy (nginx, Traefik, Caddy), terminating SSL there.

Updates#

docker compose pull docker compose up -d

Migrations run automatically on container start. Your data under/opt/cco/ is never touched by updates.

Note
Never run docker compose down -v in production — the -v flag deletes all volumes including your PostgreSQL data and license binding.

Ready to install?

Request installer access and we'll send you the Docker pull credentials and your license file within one business day.