Getting started

Sign in, create a project, deploy a service from GitHub and connect it to PostgreSQL.

Dekka runs your code from a GitHub repository or a Docker image and connects it to the databases and storage it needs, all in a project in Ghana. Going from a new account to a running service with a database takes about ten minutes.

What do I need?

You need a GitHub account with the repository you want to deploy, and code that either listens for HTTP on a port, such as a Next.js, Express, FastAPI or Go server, or runs as a background process. Sign up at dekka.cloud/signup with an email link, GitHub or Google. New accounts start on the Free plan, which needs no card.

Deploy your first service

  1. Choose New project, give it a name and choose Create project. Every project starts with one environment, called production.
  2. On the canvas, choose Add, then GitHub repository.
  3. If Dekka asks, install the Dekka GitHub App on the account or organisation that owns the repository, and choose which repositories it can read.
  4. Pick the repository, then check the Service name, the Branch and how it Runs as. A web service needs the port it listens on.
  5. Leave Build on Detect automatically, or choose Use my Dockerfile, and add any environment variables by pasting a .env file.
  6. Choose Deploy.

Dekka creates the service and starts its first deployment straight away. It builds the branch, starts it, and waits for the health check path to return a 2xx before it marks the deploy healthy. A web service then has an address such as web-x2k4.apps.dekka.cloud, and every later push to the branch deploys again.

Add a database

  1. Choose Add, then PostgreSQL, and choose Create database.
  2. Drag from the right edge of your service to the database.

Dekka creates credentials that only your service holds, sets DATABASE_URL on it and restarts it. The line between them turns solid once every step is confirmed. Connections explains each step.

How do later changes reach the service?

Changes to a service's settings are staged and go out together. After you choose Stage changes, a bar at the bottom of the canvas counts what is waiting, and Deploy changes applies everything together and redeploys the services it affects. Staged changes covers this in full.