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 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 --publishSurface | Providers | Behavior |
|---|---|---|
No dataThere 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 dataThere 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 build --target android
dowe build --target ios
dowe build --target macos
dowe build --target windows
dowe build --target linuxTarget | Artifact | Details |
|---|---|---|
No dataThere 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 dataThere 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 dataThere are no records to display | ||
.dowe/dist/docker/
Dockerfile
deploy.json
dowe-app
.dowe/dist/web/docker/
Dockerfile
deploy.json
dowe-app6 / 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 dataThere are no records to display | |
Server: /usr/local/bin/dowe-appnWeb: /usr/local/bin/dowe-app7 / 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 dataThere 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 dataThere 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 dataThere are no records to display | |