erdoganpeker commited on
Commit
e5f7bb8
·
1 Parent(s): e327f0d

deploy: switch Render to slim Dockerfile + B2 boot-time model fetch

Browse files

- Dockerfile.embedded was baking 137MB CarDD bundle into image (too big
for Render free 10GB cap and slow rebuilds).
- Use slim ./services/backend/Dockerfile with SKIP_MODEL_FETCH=0;
entrypoint.sh downloads damage/parts/severity_best.pt from
s3://hasari-inspections/models/ at boot using S3_* env vars.
- Models pre-uploaded to Backblaze B2 (S3-compatible).

Files changed (1) hide show
  1. render.yaml +12 -5
render.yaml CHANGED
@@ -44,8 +44,11 @@ services:
44
  repo: https://github.com/erdoganpeker/arac-hasar-v2
45
  branch: main
46
  rootDir: .
47
- dockerfilePath: ./services/backend/Dockerfile.embedded
48
- dockerContext: .
 
 
 
49
  plan: free # 512 MB RAM, sleeps after 15 min idle
50
  region: frankfurt # closest free region to TR
51
  autoDeploy: false # gated by GH Actions deploy hook
@@ -62,10 +65,14 @@ services:
62
  value: cpu
63
  - key: MODEL_DIR
64
  value: /app/models
65
- - key: MODEL_VARIANT
66
- value: small # use yolo11s-seg (embedded ~20 MB)
67
  - key: SKIP_MODEL_FETCH
68
- value: "1" # weights are baked in; do not S3-pull
 
 
 
 
69
  - key: FORCE_SYNC_INFERENCE
70
  value: "1" # free tier has no worker -> run inline
71
  - key: UVICORN_WORKERS
 
44
  repo: https://github.com/erdoganpeker/arac-hasar-v2
45
  branch: main
46
  rootDir: .
47
+ # Dockerfile.embedded baked the 137 MB CarDD bundle into the image
48
+ # (too big for Render free 10 GB image + slow rebuilds). We use the
49
+ # slim Dockerfile and fetch weights from B2 at boot via entrypoint.sh.
50
+ dockerfilePath: ./services/backend/Dockerfile
51
+ dockerContext: ./services/backend
52
  plan: free # 512 MB RAM, sleeps after 15 min idle
53
  region: frankfurt # closest free region to TR
54
  autoDeploy: false # gated by GH Actions deploy hook
 
65
  value: cpu
66
  - key: MODEL_DIR
67
  value: /app/models
68
+ # Boot-time model fetch from B2: entrypoint.sh downloads .pt files
69
+ # from s3://$MODEL_S3_BUCKET/$MODEL_S3_PREFIX/ into MODEL_DIR.
70
  - key: SKIP_MODEL_FETCH
71
+ value: "0"
72
+ - key: MODEL_S3_BUCKET
73
+ value: hasari-inspections
74
+ - key: MODEL_S3_PREFIX
75
+ value: models # B2 path: hasari-inspections/models/{damage,parts,severity}_best.pt
76
  - key: FORCE_SYNC_INFERENCE
77
  value: "1" # free tier has no worker -> run inline
78
  - key: UVICORN_WORKERS