Build from Source#
This guide covers building Docker images locally instead of pulling them from the registry.
Prerequisites#
Docker 24.0+ and Docker Compose V2+
Git
docker --version
docker compose version
Repository Structure#
take-away/
├── src/ # Main order-accuracy service source
├── frame-selector-service/ # YOLO frame selection service
├── gradio-ui/ # Web UI
├── rtsp-streamer/ # RTSP video streamer
├── config/ # Configuration files
├── models/ # YOLO + EasyOCR models (from setup_models.sh)
├── docker-compose.yaml
├── Dockerfile # order-accuracy service
├── Makefile
└── requirements.txt
Building Images#
Build All Services#
# Pull images from registry (default)
make build
# Build all images locally from source
make build REGISTRY=false
This builds:
Service |
Image |
|---|---|
order-accuracy |
|
frame-selector |
|
gradio-ui |
|
rtsp-streamer |
|
semantic-serviceand OVMS (openvino/model_server) are always pulled — they have no local build context.
Build a Single Service#
docker compose build order-accuracy
docker compose build frame-selector
docker compose build gradio-ui
docker compose build rtsp-streamer
Rebuild Without Cache#
docker compose build --no-cache
Model Preparation#
Before starting services, download and export models:
cd ../ovms-service
./setup_models.sh
cd ../take-away
This downloads and exports:
Qwen2.5-VL-7B-Instruct (OpenVINO INT8) →
ovms-service/models/EasyOCR models →
take-away/models/easyocr/YOLO11n (FP32 + INT8 OpenVINO) →
take-away/models/
Start Services#
make up
Verify services are running:
make status
make test-api
Troubleshooting#
Build Fails (network / pip)#
docker compose build --no-cache
Model File Not Found#
# Verify models were correctly set up
ls ../ovms-service/models/
ls models/easyocr/
ls models/yolo11n_int8_openvino_model/
GPU Not Detected#
sudo usermod -aG render $USER
# Log out and back in, then restart services
make down && make up