- docs/acceptance/qa-tracker.md:跨周期缺陷单一真源台账(§7=第五轮)。 - 周期 1/2 + iPhone SE/axe 验收证据目录、ACCEPTANCE_REVIEW 快照入库。 - 同步 README/CONTEXT/CLAUDE/DESIGN/testing/deployment/lessons-learned 口径; next.config/Dockerfile/nginx/Jenkinsfile/docker-compose/sentry/prisma 对齐 standalone 产物装配与部署形态。
36 lines
1.0 KiB
YAML
36 lines
1.0 KiB
YAML
version: '3.8'
|
||
|
||
services:
|
||
novalon-website:
|
||
build:
|
||
context: .
|
||
dockerfile: Dockerfile.prod
|
||
image: novalon-website:latest
|
||
container_name: novalon-website
|
||
restart: unless-stopped
|
||
ports:
|
||
- "3000:3000"
|
||
environment:
|
||
- NODE_ENV=production
|
||
- DATABASE_URL=file:/app/data/prod.db
|
||
- PRISMA_QUERY_ENGINE_LIBRARY=/app/src/generated/prisma/libquery_engine-linux-musl-openssl-3.0.x.so.node
|
||
env_file:
|
||
- .env.production
|
||
volumes:
|
||
- ./data:/app/data
|
||
# 落盘根是 cwd/public/uploads(src/lib/media/storage.ts:141,LOCAL_UPLOAD_DIR 未在任何 .env 中设置),
|
||
# 挂到 /app/uploads 会让上传写进容器可写层并在重启后丢失,挂载点则一直是空目录。
|
||
- ./uploads:/app/public/uploads
|
||
healthcheck:
|
||
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:3000/"]
|
||
interval: 30s
|
||
timeout: 10s
|
||
retries: 3
|
||
start_period: 40s
|
||
networks:
|
||
- novalon-network
|
||
|
||
networks:
|
||
novalon-network:
|
||
external: true
|