Koo Docs
View as Markdown

Deploy from Git

Koo builds and deploys your app straight from a GitHub repository. Pick a repo and branch, and every deploy runs a build and ships the result as a new immutable deployment — with logs, metrics, and rollback working exactly as they do for container deploys.

Connect a repository

  1. Create a web service and choose Git as its source.
  2. Connect your GitHub account — repository access is granted through the Koo GitHub App, for private and public repositories alike.
  3. Pick the repository and the branch to deploy from. The branch defaults to the repository's default branch.

The source is fixed when the service is created. GitHub is the supported provider today.

Auto-deploy on push

Auto-deploy is opt-in per service and off by default: turn it on with the service's Auto-deploy toggle. Once it's on, a push to the tracked branch arrives as a signature-verified webhook, and Koo queues a build and deploy for you — no console visit needed.

Auto-deploy is gated by plan — see Billing for the plan comparison. Leaving the toggle off keeps deploys manual: the service only ships when you deploy it yourself.

Build in your own CI instead

Prefer to keep the build on your side? Build the image in your CI, push it to a registry, and deploy it as a container. You keep the full deploy pipeline — versioned deployments, rollback, live status — the only part you supply is the build.

  1. Build and push the image from your CI pipeline:

    bash
    docker build -t registry.example.com/you/app:abc123 .docker push registry.example.com/you/app:abc123
  2. Deploy that image to your web service — see Deploy a container.

To trigger that deploy from the pipeline itself, authenticate your CI with an API token and call the API; or start the deploy from the console after your CI pushes the image.