Deploy with koo up
koo up deploys the directory on your machine: it packs your code into an archive, uploads it, builds it on Koo, and rolls it out. No git remote and no registry needed.
First run
Install the Koo CLI.
Sign in:
bashkoo loginFrom your project directory, deploy:
bashkoo up
If the directory isn't linked to a service yet, koo up offers to pick — or create — the account, project, environment, and service to deploy to, then records that link in a koo.json file next to your code. Every later koo up from the directory deploys the same service; commit koo.json to share the link with your team.
What koo up does
- Packs the directory into an archive.
.gitignoreand.kooignoreare honored with gitignore rules,.dockerignorewith Docker's rules — so the packed context matches a localdocker build— and.gitandkoo.jsonare always excluded. - Uploads the archive and starts a build on Koo.
- Rolls the result out as a new deployment, streaming progress as it goes: the pipeline statuses, the live build stage, then the wait for the service to come up.
- Prints the service's URL once it is online.
The command waits by default. Pass --detach to start the deploy and return immediately, then check on it later with koo status:
koo up --detachRedeploying
A service deployed this way ships only when you run koo up — creating it stages nothing to build, and there is no branch or registry for Koo to watch. To release a new version, run koo up again: each run creates the next numbered version, and rollback works like any other deploy.
koo up needs a fully set-up account. If you haven't finished setting yours up in the console — signing in, claiming a handle and verifying your phone — the CLI stops with onboarding_incomplete and the message "Finish setting up your account in the Koo console (verify your phone) before deploying." Finish setup in the console, then run koo up again.