- Multi-stage Dockerfiles for web/api/generator (pnpm workspace install, tsx runtime — workspace packages are raw TS, same model as runner-template). - docker-compose.prod.yml: postgres + redis + the three app services. api/generator/web use host networking so the generator's host-port probe is correct and every service shares one address space; api + generator mount the Docker socket. Binds nothing on 80/443 — safe beside other apps. - Optional Traefik reverse proxy in infra/traefik/ (heavily gated — only if the box has no existing proxy). - .env.production.example, .dockerignore, DEPLOY.md (Cloudflare zone, GoDaddy nameserver switch, server deploy, Google Cloud Console OAuth app). - api/generator `start` now runs via tsx; `node dist/index.js` could never resolve the raw-TS workspace imports. All three images verified building clean; the API container boots under tsx. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
33 lines
744 B
JSON
33 lines
744 B
JSON
{
|
|
"name": "@bmm/api",
|
|
"version": "0.1.0",
|
|
"type": "module",
|
|
"private": true,
|
|
"scripts": {
|
|
"dev": "tsx watch src/index.ts",
|
|
"start": "tsx src/index.ts",
|
|
"build": "tsc -p tsconfig.json",
|
|
"typecheck": "tsc --noEmit"
|
|
},
|
|
"dependencies": {
|
|
"@bmm/auth": "workspace:*",
|
|
"@bmm/db": "workspace:*",
|
|
"@bmm/llm": "workspace:*",
|
|
"@bmm/types": "workspace:*",
|
|
"@fastify/cookie": "11.0.1",
|
|
"@fastify/cors": "10.0.1",
|
|
"@fastify/websocket": "11.0.1",
|
|
"bullmq": "5.34.5",
|
|
"drizzle-orm": "0.36.4",
|
|
"fastify": "5.2.0",
|
|
"ioredis": "5.4.1",
|
|
"jose": "5.9.6",
|
|
"zod": "3.25.76"
|
|
},
|
|
"devDependencies": {
|
|
"@types/node": "22.10.2",
|
|
"tsx": "4.19.2",
|
|
"typescript": "5.7.2"
|
|
}
|
|
}
|