Deploy to Orbita
A multi-tenant PaaS for your own VPS, with zero-config deploys for Grit apps.
Freelancers and agencies hosting several clients on one server. Every organisation gets its own Docker network, its own encryption keys, its own resource quota and its own dashboard, which is the part general-purpose panels do not do.
Anything where you need a large community to have hit your problem first. Orbita is early: it is built by the same author as Grit, which is why Grit apps deploy with no configuration, and it has nothing like the operational history of Dokploy or Coolify.
Setup
- 1
Point a domain at a fresh Ubuntu server
Orbita expects Ubuntu 24.04 with ports 80, 443 and 8080 open, and an A record already resolving to the box. It provisions TLS on first boot, so the DNS has to be in place before you start rather than after.
- 2
Initialise the server
One interactive command does the whole server setup: it hardens the box, creates a deploy user with SSH keys, disables root and password login, installs Docker with Swarm and Traefik, and creates your admin credentials. It is a single binary of about 30 MB that idles under 50 MB of RAM, which is why it fits on the same small VPS as the apps it runs.
orbita init - 3
Describe the deployment once
orbita.yaml names the repository, the add-ons to provision and the domains to route. Postgres, Redis and MinIO are created for you rather than being services you write into a compose file, which is the difference between this and pointing Dokploy at docker-compose.prod.yml.
app: my-apprepo: you/my-appaddons: [postgres, redis]domains:web: app.example.comapi: api.app.example.commigrate: trueenv:from: .env.production - 4
Deploy
Run from a directory containing grit.json. Orbita reads the Grit project layout directly, so there is no build configuration to fill in: it knows where the API is, where the web app is, and which one needs the database. Grit does not auto-migrate on boot in production: a process that rewrites the schema every time it restarts is a bad idea when the platform can restart it for its own reasons. Run migrations as an explicit step.
orbita deploy - 5
Deploy on push
Add a GitHub token and Orbita will deploy from a webhook on every push to the tracked branch, the same way the other panels here do.
What catches people out
Early software. At the time of writing the repository is around a hundred commits old with a handful of stars, so you are an early adopter rather than a user of a settled product. That is a reasonable trade for the multi-tenancy and a bad one if this is a client deadline.
It is the control plane behind Grit Cloud, so its Grit support is genuinely first class and its support for everything else is younger. Deploying a non-Grit app is possible via Dockerfile, Compose or Nixpacks, but you are on the less-travelled path.
Ubuntu 24.04 specifically. The init script hardens and configures a known base; running it on a different distribution is not a supported combination.
Postgres, Redis and MinIO run as add-ons on your box. Backups and upgrades are yours exactly as they are on Dokploy or Coolify: see the backup page.
Platform dashboards and CLI flags change faster than these docs. For anything that looks different from what is written here, Orbita's own documentation is the authority: github.com/MUKE-coder/orbita
