Skip to content

Quickstart

This guide takes you from nothing to a running app on a public URL.

You’ll need:

  • a Watasu account
  • a Git repository with an app you’d like to deploy (any language with a buildpack, or anything with a Dockerfile)
Terminal window
brew tap watasuio/watasu
brew install watasu

For other install paths, see Install the CLI.

Terminal window
watasu login

The CLI opens a browser, you authenticate, and credentials are stored locally for both API calls and Git pushes.

From inside your Git repository:

Terminal window
watasu create my-first-app

The output gives you:

  • a managed URL like https://my-first-app.watasu.app
  • a Git remote named watasu pointing at git.watasu.io

If you’d rather skip the local remote, pass --no-remote.

Terminal window
git push watasu main

Watasu stages your source, builds an image (using your Dockerfile if there is one, otherwise Cloud Native Buildpacks), creates a release, and rolls it out. Build and deploy output streams back to your terminal.

When the deploy finishes, open the app URL.

Most real apps need at least one secret or setting:

Terminal window
watasu config:set SECRET_KEY_BASE=replace-me --app my-first-app

Setting a config var triggers a new release. Your app restarts with the new value.

Terminal window
watasu logs --app my-first-app

This is your first stop whenever something doesn’t look right after a deploy.

Terminal window
watasu addons:create postgresql --app my-first-app

Wait until it’s ready:

Terminal window
watasu addons --app my-first-app

Your app receives DATABASE_URL (and PGHOST, PGPORT, PGDATABASE, PGUSER, PGPASSWORD) automatically and restarts with the new environment.

Terminal window
watasu domains:add www.example.com --app my-first-app

Watasu prints the DNS target to point at. Add it at your DNS provider, then:

Terminal window
watasu domains:wait www.example.com --app my-first-app

TLS is provisioned automatically once the domain verifies.

That’s the whole loop: create, push, configure, attach, observe.

Next steps depending on what you want to do: