Deploy a Docker Image

The simplest way to ship something: point the platform at any image on a public registry (Docker Hub, GHCR, etc.) and it runs it behind HTTPS.

Examples assume API=https://api.cynchro.cloud and a $TOKEN from Getting Started.

Dashboard

  1. Deploy an appDocker image tab.
  2. App name + Docker image + Container port.
  3. (Optional) CPU, Memory, custom Domain.
  4. Deploy.

API

curl -s -X POST $API/deploy \
  -H "authorization: Bearer $TOKEN" -H 'content-type: application/json' \
  -d '{
    "name": "hello",
    "image": "nginxdemos/hello",
    "port": 80
  }'

Fields

Field Required Default Notes
name DNS-safe: a–z, 0–9, -. Unique per org. Redeploying updates in place.
image ✅* Any pullable image, e.g. ghcr.io/acme/api:1.2.3.
port   80 The port your container listens on inside the container.
domain   <name>.<ROOT_DOMAIN> Custom hostname (see below).
cpu   1 Cores (e.g. 0.5). Max 8.
memory   512 MB. Min 64, max 16384.
env   {} Inline environment variables (encrypted at rest).
envFrom / secretFiles   Reference Secrets by name.

* One of image, repo, or services is required.

Environment variables

Inline values (stored encrypted):

-d '{"name":"api","image":"acme/api:1.0","port":3000,
     "env":{"LOG_LEVEL":"info","FEATURE_X":"on"}}'

For credentials and shared config, prefer Secrets over inline env.

Custom domains

By default your app is at https://<name>.<ROOT_DOMAIN> (e.g. https://hello.cynchro.cloud). To use your own hostname:

  1. Point DNS for that hostname at the server’s IP first (an A record).
  2. Pass it as domain:
-d '{"name":"site","image":"acme/site:1.0","port":80,"domain":"www.mydomain.com"}'

The cert is issued on first request via Let’s Encrypt HTTP-01 — DNS must resolve before that works. domain must be a valid hostname (no spaces/special chars).

Updating / redeploying

Deploy the same name again with a new image tag — it’s idempotent and updates the running container. Quotas only count new apps, so redeploys are always allowed.

→ Manage it: Managing Apps · Build from source instead: Deploy from Git


This site uses Just the Docs, a documentation theme for Jekyll.