Deploy Mill docs

The same guides and references your agent reads — browsable here. Every page is also an MCP resource your agent can fetch or search with search_docs.

Getting started & help

Stack templates

Recommended libraries & conventions

Project configuration & lifecycle

.deploymill/project.json reference Guide

Full schema for the project config file plus the edit-file-then-reconcile workflow: domain, mounts, rollback, database, dryRun/prune flags, and what reconcile does NOT do.

Persistent storage (volumes) reference Guide

When and how to give an app persistent disk: choosing a volume vs the managed database, declaring named-volume `mounts` in .deploymill/project.json and reconciling them, the write-under-mountPath rule, why volumes are per-app (no shared volumes — share via a service), how previews get their own fresh volume, and removing/renaming a volume. Read before persisting files to disk.

Preview deployments reference Guide

How PR previews are created, hostname derivation (auto-generated vs wildcard-domain-base), and the shared-prod-database gotcha. Read this before doing destructive migrations on a PR branch.

Rollback reference Guide

Enabling rollback via `.deploymill/project.json`, performing an image-swap rollback with `list_deployments` + `rollback`, what rollback does NOT cover (migrations, env vars, data), and when to use it vs forward-fix.

Health endpoint & deploy/rollback health gate reference Guide

The health-endpoint contract: every web app exposes one endpoint (default /healthz) that returns 200 iff fully healthy; deploy/rollback/get_app_health and auto-rollback all key off it (200 = good, anything else = roll back). Covers the `health` block in .deploymill/project.json (path/retries/intervalMs/timeoutMs), strict vs lenient probe semantics, the N-consecutive-failure rule, the 404 fallback, the orchestrator Swarm HEALTHCHECK, and how to write real readiness checks into the handler. Read before relying on auto-rollback.

Environment variables reference Guide

How `set_env_vars` / `list_env_vars` / `delete_env_vars` work: merge-vs-replace semantics, `${{project.X}}` template references, the redeploy-required rule, and the previews-share-prod-env consequence.

Source / file storage reference Guide

Where a project's files live and how the storage backend is modeled as a provider-neutral primitive: the file tools (push_files/get_file/list_files), the optional `source` block in .deploymill/project.json, and how a non-GitHub backend (e.g. self-hosted Gitea) would slot in without changing any tool.

Secrets (API keys & OAuth credentials) reference Guide

How to store org-scoped secrets in the encrypted vault (`request_secret` browser hand-off — values never cross the agent) and get them into apps — `bind_secret` for one-offs or the `secrets` array in `.deploymill/project.json` + `reconcile_project` for config-as-code. Covers what encryption does and doesn't protect, the redaction guarantees, and wiring an app's Google OAuth (client id/secret + redirect URI).

Authentication & users reference Guide

Best practices for adding user accounts / login to a deploymill-managed app: the four platform facts (sessions in Postgres not on the ephemeral disk, host-pinned base URL per environment, signing/OAuth secrets through the vault, Secure cookies need HTTPS), the Node paved road (Better Auth on the managed Neon DB), the Python and hosted-IdP equivalents, and per-preview auth wiring (`${PREVIEW_URL}` base URL + OAuth redirect URIs).

Reading logs reference Guide

How to read build/deploy logs (`source: "build"`) and runtime container stdout/stderr (`source: "runtime"`) with `get_logs` — `tail`/`grep`/`level`/`since` filtering, when to use which source, the failed-deploy debugging loop, and the runtime source's opt-in log-reader sidecar (degrades to `{ configured: false }` when absent).

Databases

Object storage