DigitalOcean
Deploy Composery on a DigitalOcean Droplet with Docker Compose, or on DOKS.
DigitalOcean is one of the most common places people self-host apps like this. Composery
needs a persistent /data, so use a Droplet (a VPS you control) - not App Platform,
which has no attachable volumes.
Droplet (recommended)
- Create a Droplet. The Docker on Ubuntu Marketplace image ships Docker and Compose preinstalled; a plain Ubuntu Droplet works too (install Docker first). 2 GB RAM is a sane floor.
- Point an
A/AAAArecord at the Droplet's (or a reserved) IP, and in the Droplet's firewall allow inbound TCP80and443. - SSH in, copy a VPS recipe, edit the
Caddyfilewith your domain, anddocker compose up -d.
To skip the SSH step, paste
templates/user-data/user-data.yaml
into the Droplet's user data field at creation - it installs Docker and brings Composery
up behind Caddy on first boot.
A Droplet is a full VM, so it allows privileged containers and host cgroups: the
systemd + Caddy recipe (closest to Composery Cloud) works, as does supervisor + Caddy.
Open https://<your-domain>/ide/. State lives in the composery_data volume; snapshot the
Droplet before major image upgrades.
Managed Kubernetes (DOKS)
For a managed cluster instead of a single VM, follow the Kubernetes guide -
DOKS's default do-block-storage StorageClass backs the PVC.
Not App Platform
App Platform has no persistent volumes - its local disk is ephemeral and capped at 4 GiB - so Composery state would not survive a redeploy. Use a Droplet or DOKS.