kneron_model_converter/docker-compose.real.yml
jim800121chen 0cae1b1130 feat(worker): 啟用 staging 真實轉檔(取代 stub)+ 修 ref_images S3 path
staging worker 原本跑 WORKER_MODE=stub(假轉檔、產佔位 NEF),visionA 因此反映拿到的是 stub。本次讓真實轉檔上線並打通 onnx→bie→nef 完整鏈路。

新增:
- services/workers/Dockerfile.real:真實版 worker image,COPY repo 自帶 ktc/ + toolchain/prebuild(2GB),設 USE_PREBUILD/LD_LIBRARY_PATH/PYTHONPATH/KTC_DISABLE_MP/WORKER_MODE=real;排除 libs/dynasty+libs/compiler 省 3.2G
- .dockerignore:控制 build context(排除被 USE_PREBUILD 取代的舊系統 binaries)
- docker-compose.real.yml:override 三 worker 改用 registry image,保留 base stub build 供一鍵 rollback

修正(e2e 抓到的兩個問題):
- jobService.js: ref_images S3 key 由 jobs/{id}/ref_images/ 改為 jobs/{id}/input/ref_images/,對齊系統主約定(local.js/legacy.js/bie worker consumer.py),修好 bie 量化抓不到 dataset 的 blocker。加 contract guard test 鎖死寫入 prefix == worker 讀取 prefix
- security.md: 同步 ref_images S3 key 路徑描述

驗證(staging e2e):
- platform 530(與模型相符)下 onnx→bie→nef 全綠,產真 NEF 636KB(合法 FlatBuffer、非 STUB),/result 可拉、結果上 MinIO
- 已知約定:呼叫端 platform 必須與模型量化 platform 一致(配錯會在 bie 量化階段失敗)

scheduler 全套件 667 tests pass。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-22 12:43:24 +08:00

43 lines
1.8 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

##
# Kneron Model Converter — REAL worker override真實轉檔版
#
# 用途:把 onnx/bie/nef 三個 worker 從 stub 切成真實轉檔 image
# jim800121/kneron-model-converter-worker:real-20260622
#
# 部署staging
# export DOCKER_HOST=tcp://192.168.0.130:2375
# docker compose -f docker-compose.yml -f docker-compose.real.yml pull onnx-worker bie-worker nef-worker
# docker compose -f docker-compose.yml -f docker-compose.real.yml up -d onnx-worker bie-worker nef-worker
#
# Rollback 回 stub秒退、不靠 Docker Hub
# export DOCKER_HOST=tcp://192.168.0.130:2375
# # 直接用 base compose不帶 -f docker-compose.real.yml重啟會用回本地 stub image
# docker compose -f docker-compose.yml up -d --build onnx-worker bie-worker nef-worker
# # stub image 還在 staging 本地;--build 確保用回 Dockerfile.stub。
# # 或更快base compose 的 stub image 還在,省略 --build 直接 up -d 即用回原 stub container
#
# 設計override 只覆寫「image / WORKER_MODE」其餘STAGE / REDIS / MinIO env / volumes /
# depends_on / restart沿用 base compose。base 的 build: 區段保留不刪 → rollback 乾淨。
# STORAGE_BACKEND=minio 由 .env 提供(已驗證),三個 worker 沿用 base 的
# STORAGE_BACKEND=${STORAGE_BACKEND:-local} → 最終生效 minio。
##
services:
onnx-worker:
image: jim800121/kneron-model-converter-worker:real-20260622
pull_policy: always
environment:
- WORKER_MODE=real
bie-worker:
image: jim800121/kneron-model-converter-worker:real-20260622
pull_policy: always
environment:
- WORKER_MODE=real
nef-worker:
image: jim800121/kneron-model-converter-worker:real-20260622
pull_policy: always
environment:
- WORKER_MODE=real