1- .PHONY : help init fireform build up down logs logs-app logs-ollama shell pull-model test clean super-clean
1+ .PHONY : help init fireform build up down logs logs-app logs-ollama shell pull-model test clean super-clean status ready-banner sync
22
33COMPOSE = docker compose -f docker/dev/compose.yml --env-file docker/.env.dev
44ENV_DEV = docker/.env.dev
2222 @echo " make build - Build Docker images"
2323 @echo " make up - Start all containers (detached)"
2424 @echo " make down - Stop all containers"
25+ @echo " make sync - Fast-install new requirements.txt deps into running app (no rebuild)"
26+ @echo " make status - Show compact container health summary"
2527 @echo " make logs - Stream all container logs"
2628 @echo " make logs-app - Stream app container logs"
2729 @echo " make logs-ollama - Stream Ollama container logs"
@@ -43,30 +45,38 @@ init:
4345 * ) echo " Run 'make fireform' when ready." ;; \
4446 esac
4547
46- fireform : build up
47- @printf " Waiting for Ollama to be ready..."
48- @until $(COMPOSE ) exec -T ollama ollama list > /dev/null 2>&1 ; do \
49- printf ' .' ; sleep 2; \
50- done
51- @echo " ready."
48+ fireform :
49+ @$(COMPOSE ) up -d --build
5250 @if $(COMPOSE ) exec -T ollama ollama list 2> /dev/null | grep -q " ^$( OLLAMA_MODEL) " ; then \
5351 echo " Model $( OLLAMA_MODEL) already pulled." ; \
5452 else \
5553 echo " Pulling $( OLLAMA_MODEL) ..." ; \
5654 $(COMPOSE ) exec -T ollama ollama pull $(OLLAMA_MODEL ) ; \
5755 fi
58- @echo " "
59- @echo " FireForm is ready!"
60- @echo " API: http://localhost:8000"
61- @echo " API Docs: http://localhost:8000/docs"
62- @echo " "
63- @echo " Run 'make logs' to view live logs, 'make down' to stop."
56+ @$(MAKE ) --no-print-directory ready-banner
6457
6558build :
6659 @$(COMPOSE ) build
6760
6861up :
6962 @$(COMPOSE ) up -d
63+ @$(MAKE ) --no-print-directory ready-banner
64+
65+ # Fast path for "I added a package": install the delta into the running container
66+ # (no image rebuild, no 1.6GB layer re-export). uv installs only what's missing in
67+ sync :
68+ @$(COMPOSE ) exec -T app sh -c " UV_TORCH_BACKEND=cpu uv pip install --system -r requirements.txt"
69+
70+ status :
71+ @$(COMPOSE ) ps --format ' table {{.Service}}\t{{.Status}}'
72+
73+ ready-banner :
74+ @echo " "
75+ @echo " FireForm is ready!"
76+ @echo " API: http://localhost:8000"
77+ @echo " API Docs: http://localhost:8000/docs"
78+ @echo " "
79+ @echo " Run 'make logs' to view live logs, 'make down' to stop."
7080
7181down :
7282 @$(COMPOSE ) down --remove-orphans
0 commit comments