Skip to content

Deployment Runbook

Nyk edited this page Mar 6, 2026 · 1 revision

Deployment Runbook

Last reviewed: 2026-03-06 Owner: platform

Use this page to deploy Mission Control in development and production.

Deployment Modes

  • Direct Node process (pnpm build && pnpm start)
  • Docker container (recommended for portable production)

Production Direct

pnpm install --frozen-lockfile
pnpm build
pnpm start

Default direct bind is 0.0.0.0:3005. Override:

PORT=3000 pnpm start

Production Docker

docker build -t mission-control .
docker run -p 3000:3000 \
  -v mission-control-data:/app/.data \
  -e AUTH_USER=admin \
  -e AUTH_PASS=change-me \
  -e API_KEY=change-me \
  mission-control

Required Environment Baseline

  • AUTH_USER
  • AUTH_PASS or AUTH_PASS_B64
  • API_KEY
  • PORT (optional)
  • MC_ALLOWED_HOSTS (required for network-facing deployment)

Zero-Downtime-ish Upgrade Pattern

  1. Backup .data volume.
  2. Deploy new container/image in parallel environment.
  3. Validate /api/status, /api/auth/me, /api/tasks.
  4. Switch traffic at proxy/load balancer.
  5. Keep prior image for fast rollback.

Rollback

  1. Stop new instance.
  2. Start prior known-good image/build.
  3. Restore .data from backup if migrations caused incompatibility.
  4. Verify health endpoints and login.

Post-Deploy Smoke Tests

  1. Login works.
  2. Dashboard renders.
  3. Task creation and update work.
  4. WebSocket/SSE events flow.
  5. Token reporting endpoint accepts writes.

Clone this wiki locally