工作区OpenClaw Demo Workspace
桥接状态健康
运行中任务1
结果产物1
核心文件分支

核心文件

主题

Maoclaw Production Deploy Runbook

webweb/maoclaw-production-deploy-runbook.md

查看来源与关联入口

类别web

来自当前 Web 文档集。

路径web/maoclaw-production-deploy-runbook.md

- `app`: Next.js web control plane - `postgres`: primary relational store for Prisma - `redis`: cache / queue coordination

关联入口返回相关页面

阅读后可直接回到运行时、会话或网站页面继续操作。

web/maoclaw-production-deploy-runbook.md

# maoclaw Web Production Deploy Runbook

## Target shape

- `app`: Next.js web control plane
- `postgres`: primary relational store for Prisma
- `redis`: cache / queue coordination
- `minio`: S3-compatible artifact storage
- host `nginx`: reverse proxy and TLS termination for `xinxiang.xin`

## First deploy

1. Copy `.env.production.example` to `.env.production`.
2. Set strong values for `POSTGRES_PASSWORD` and `MINIO_ROOT_PASSWORD`.
3. Confirm `APP_URL=https://xinxiang.xin`.
4. Start stateful services and app:
   - `docker compose -f docker-compose.prod.yml up -d postgres redis minio create-bucket`
   - `docker compose -f docker-compose.prod.yml up --build migrate`
   - `docker compose -f docker-compose.prod.yml up --build seed`
   - `docker compose -f docker-compose.prod.yml up -d --build app`

## Day-2 operations

- Check containers: `docker compose -f docker-compose.prod.yml ps`
- App logs: `docker compose -f docker-compose.prod.yml logs -f app`
- Proxy logs: host `nginx` logs
- Restart app only: `docker compose -f docker-compose.prod.yml up -d --build app`

## Notes

- This deploy shape is intentionally single-server and operationally simple.
- `maoclaw` runtime workers should remain separate from the web server.
- MinIO console is internal only on this shape. Do not expose `9001` publicly unless you add access control.
- The app is published only on `127.0.0.1:3000` and should be exposed through `nginx`.

- `app`: Next.js web control plane - `postgres`: primary relational store for Prisma - `redis`: cache / queue coordination