chore(devcontainer): run OCR as a dev process, not a compose service #117

Merged
TimCane merged 1 commit from chore/ocr-dev-process into main 2026-07-07 17:07:29 +01:00
TimCane commented 2026-07-07 17:05:23 +01:00 (Migrated from github.com)

Summary

  • OCR no longer runs as the ocr devcontainer compose sidecar; it runs in-container as a uvicorn dev process alongside the API and Vite
  • Devcontainer image gains Python venv/pip and paddle native libs (libgomp1 libgl1 libglib2.0-0); post-create.sh builds ocr/.venv (light deps + real PaddleOCR wheels) and bakes the PP-OCRv4 models
  • New ocr: dev VS Code task and ocr shell alias; dev: all now starts API + web + OCR; app service publishes/forwards port 8000
  • Dev backend points at http://localhost:8000
  • Prod is untouched: docker-compose.prod.yml still runs the OCR container from GHCR
  • Docs updated per the docs-first rule (docs/06, docs/14)

Test plan

  • Rebuild the devcontainer; post-create builds ocr/.venv and bakes models without reaching the network
  • dev: all starts API, web and OCR; GET http://localhost:8000/healthz returns 200
  • Backend /healthz reports the OCR probe true against http://localhost:8000
  • CI e2e (prod compose, GHCR image) unaffected
## Summary - OCR no longer runs as the `ocr` devcontainer compose sidecar; it runs in-container as a uvicorn dev process alongside the API and Vite - Devcontainer image gains Python venv/pip and paddle native libs (`libgomp1 libgl1 libglib2.0-0`); `post-create.sh` builds `ocr/.venv` (light deps + real PaddleOCR wheels) and bakes the PP-OCRv4 models - New `ocr: dev` VS Code task and `ocr` shell alias; `dev: all` now starts API + web + OCR; app service publishes/forwards port 8000 - Dev backend points at `http://localhost:8000` - Prod is untouched: `docker-compose.prod.yml` still runs the OCR container from GHCR - Docs updated per the docs-first rule (`docs/06`, `docs/14`) ## Test plan - Rebuild the devcontainer; `post-create` builds `ocr/.venv` and bakes models without reaching the network - `dev: all` starts API, web and OCR; `GET http://localhost:8000/healthz` returns `200` - Backend `/healthz` reports the OCR probe true against `http://localhost:8000` - CI e2e (prod compose, GHCR image) unaffected
Sign in to join this conversation.
No description provided.