Skip to content

How it works

Ownkube runs your apps on infrastructure it owns and operates. You push a repo or point at a container image, Ownkube builds and deploys it, and you get a live URL with managed Postgres, automatic TLS, logs, metrics, autoscaling and rollbacks. You pay Ownkube per minute for what you use.

  1. Connect a source

    Connect a GitHub repository through the Ownkube GitHub App, connect a GitLab account, or give Ownkube an image reference such as ghcr.io/owner/app:1.2.0. See Builds and source.

  2. Ownkube builds

    For a repository on either provider, Ownkube builds an image on a builder of the size you pick. With a Dockerfile it uses that; without one, the automatic build detects the language and produces an image for you. Image deployments skip this step.

  3. Ownkube rolls it out

    New containers start in the region you chose and must pass their health checks before old containers stop receiving traffic. A rollout that cannot become healthy leaves the previous revision serving.

  4. You get a live URL

    Every public web app gets a *.ownkube.app hostname with a managed TLS certificate. See Public hostnames and TLS.

Every later change, whether a new push, a variable edit or a scaling change, is a new revision rolled out the same way, and the Activity tab keeps a diff and a rollback button for each.

ComponentWhere it runsWho owns it
Your web apps, workers and jobsOwnkube Compute, in the region you pickYou, deployed by Ownkube
Your Postgres databases and Valkey cachesOwnkube Compute, same region as the apps that use themYou, managed by Ownkube
Built imagesOwnkube’s image storeYou
Variables and secretsEncrypted secret storeYou, encrypted at rest
User accounts, billing, configurationOwnkube control planeOwnkube

Every deployment streams logs, CPU, memory, request rate and latency into its own page, and alerts can email you when a threshold is crossed. The dashboard, the CLI and the MCP server read the same signals.

Everything above is Ownkube Compute, the default. When you want your own data boundary or your own AWS bill, the same app runs inside your own AWS account with the same workflow, dashboard and observability. It is an option, not a requirement. See Run in your own AWS account.