DEVELOPMENT / PRODUCTION DEPLOY

Dowe Deploy

Build native release artifacts, publish mobile apps, or deploy to Docker, SSH, Cloudflare, and Vercel. Dowe Cloud deployment is coming soon.

1 / CAPABILITY-AWARE MENU

Choose a configured surface

Run deploy from the project root. Select Live, Stage, or UAT before the deploy surface; Android and iOS remain Live-only.

dowe
dowe deploy
dowe deploy web --target docker --registry ghcr.io/acme --image clinic-web
dowe deploy server --target ssh --publish --host server.example.com --user deploy --key-file $HOME/.ssh/id_ed25519
dowe deploy server --environment stage --target docker --registry ghcr.io/acme --image clinic
dowe deploy --environment uat --target cloudflare --name clinic-api
dowe deploy server --target vercel --name clinic-api --publish
dowe deploy web --target vercel --name clinic-web --publish
dowe deploy web --environment live --name clinic-web --publish
dowe deploy --target android --track internal --publish
dowe deploy --target ios --publish
Surface
Providers
Behavior

No data

There are no records to display

2 / DEPLOY ENVIRONMENTS

Deploy without rewriting .env

dowe dev uses .env. Deploy selects .env.live, .env.stage, or .env.uat, while dowe build always uses .env.live. Ignore every local value file and declare shared names in .env.example.

Area
Rule

No data

There are no records to display

3 / NATIVE RELEASE ARTIFACTS

Build without publishing

dowe build writes release artifacts under .dowe/dist/build. iOS and macOS are available only when Dowe runs on macOS.

dowe
dowe build --target android
dowe build --target ios
dowe build --target macos
dowe build --target windows
dowe build --target linux
Target
Artifact
Details

No data

There are no records to display

4 / MOBILE STORES

Upload an already signed release

Google Play receives an Android App Bundle through an edit. App Store Connect receives the signed IPA through Xcode's upload adapter. Non-interactive publication requires --publish.

Store
Requirements

No data

There are no records to display

5 / NATIVE DOCKER RUNTIME

Tag the image you intend to run

Interactive Docker asks for a registry and image name. docker.io and the project folder provide safe defaults, then Dowe remembers confirmed non-secret values separately for Server and Web.

Concern
Default
Rule

No data

There are no records to display

dowe
.dowe/dist/docker/
  Dockerfile
  deploy.json
  dowe-app
.dowe/dist/web/docker/
  Dockerfile
  deploy.json
  dowe-app

6 / DISTROLESS / NONROOT

Ship one Dowe application, not the toolchain

Server and Web each contain one standalone Linux application executable with their selected surface embedded. Neither image contains Cargo, rustc, a shell, or Node.js.

Concern
Rule

No data

There are no records to display

dowe
Server: /usr/local/bin/dowe-appnWeb: /usr/local/bin/dowe-app

7 / SSH / SYSTEMD

Install one native server executable

SSH deploy embeds the selected Dowe application in the same-version Linux amd64 runtime, uploads it with OpenSSH, and enables a background systemd service.

Concern
Rule

No data

There are no records to display

8 / SAFE FALLBACK

Keep the context when Docker is unavailable

Dowe always writes the context first. A working daemon builds and tags the image; a missing client or daemon leaves a usable Dockerfile for later.

State
Result

No data

There are no records to display

9 / CURRENT BOUNDARIES

Three active Server providers, one shared Dowe authority

Dowe Cloud remains visible as a future provider, while Docker, SSH, Cloudflare, and Vercel are the active Server deploy targets. The former Linux host package remains retired.

Boundary
Rule

No data

There are no records to display