Commit Graph
15 Commits
Author SHA1 Message Date
yml 2ecf4691d0 [Snow Team] Merge ocr-docker's work 2026-05-19 23:10:39 +08:00
yml c03aed5d1b [Snow Team] Merge ocr-node's work 2026-05-19 23:10:39 +08:00
yml d43897c64c [Snow Team] ocr-python: auto-commit work 2026-05-19 23:10:33 +08:00
yml bc5fd4212d feat(backend): refactor OCR client to support HTTP + subprocess dual mode
- runtime-config.js: add baseUrl field to ocr type definition
- default.cjs: add ocr.baseUrl default (empty string = subprocess mode)
- runtime.js: add OCR_BASE_URL env var parsing
- ocr.js: add HTTP mode (when OCR_BASE_URL set) alongside existing subprocess mode
  - resolveOcrMode() detects mode from runtimeConfig.ocr.baseUrl
  - callOcrViaHttp() calls FastAPI endpoints directly with payload
  - warmupOcrViaHttp() calls /health endpoint for HTTP mode warmup
  - callOcrRequest() routes between HTTP and subprocess based on mode
  - All 5 original exports preserved (recognizeTencentCaptcha, etc.)
  - Subprocess mode remains backward compatible (default when no OCR_BASE_URL)
2026-05-19 23:09:30 +08:00
yml b7de22d665 feat: extract OCR worker into separate service
- Remove Python/OCR steps from backend.Dockerfile (builder + runtime)
- Remove Python/OCR steps from backend-dev.Dockerfile
- Add OCR_BASE_URL env var to both Dockerfiles (http://ocr-worker:8100)
- Add ocr-worker service to docker-compose.yml with healthcheck
- Add ocr-worker service to docker-compose.dev.yml with healthcheck + port
- Update backend depends_on in both compose files to include ocr-worker
- Replace OCR_PROJECT_ROOT with OCR_BASE_URL in compose env vars
- Remove pip install line from start-dev-container.sh
2026-05-19 23:06:15 +08:00
yml f87238b6c0 fix: use Debian official HTTP mirrors in runtime stage (Tencent mirrors redirect to HTTPS which fails without ca-certificates on slim) 2026-05-19 22:39:53 +08:00
yml 82932758b5 fix: correct Python venv path in production Dockerfile to match OCR worker lookup logic (.venv inside ocr-worker dir) 2026-05-19 22:35:02 +08:00
yml 95064466ac [Snow Team] Merge dev-docker's work 2026-05-19 22:31:38 +08:00
yml 925e2c0eaa refactor: multi-stage production Dockerfile for backend
- Split into builder (node:22-bookworm) and runtime (node:22-bookworm-slim)
- Remove VNC/X11 packages (xauth, x11vnc, novnc, websockify) from production
- Install only minimal Chromium runtime libs in slim stage
- Use python3 -m venv instead of --break-system-packages
- npm prune --omit=dev to exclude devDependencies from runtime
- Run as non-root user appuser (uid=1001)
- Use HTTP apt mirrors (OrbStack BuildKit TLS workaround)
- Copy only runtime-needed dirs: src/, config/, node_modules, venv, subservices
- Expected image size: ~800MB-1.2GB (down from ~3.5GB)
2026-05-19 22:31:05 +08:00
yml 311c5a1aa4 feat: add dev Dockerfile with VNC/X11/Xvfb and update docker-compose.dev.yml
- Create deploy/docker/backend-dev.Dockerfile: single-stage, root,
  includes xauth, x11vnc, novnc, websockify, xvfb, Playwright+chromium,
  Python3+pip+ocr-worker (--break-system-packages)
- Use HTTP (not HTTPS) for apt mirrors per BuildKit TLS note
- Update docker-compose.dev.yml backend to point to backend-dev.Dockerfile
- .dockerignore unchanged (no issues found)
2026-05-19 22:29:21 +08:00
yml f157fbc87a 优化docker相关 2026-05-19 21:41:43 +08:00
yml 4429fb20d7 删除无用 2026-05-19 20:57:02 +08:00
yml bbd0991e52 重构:提取useAdminAction/useAdminListQuerySync + 迁移列表视图到useAdminListPage + 修复formatAutoDeliveryReason缺失case + 消除重复格式化函数 + 修复CSS类冲突 2026-05-19 19:34:40 +08:00
yml 563038aa40 重构:迁移3个列表视图到useAdminListPage + 提取useAdminAction组合式函数 2026-05-19 19:29:14 +08:00
yml 671b1640aa 重构:迁移3个列表视图到useAdminListPage + 提取useAdminAction组合式函数 2026-05-19 19:27:43 +08:00