feat: add Justfile and docker-compose.dev.yml for local dev workflow

just up   — mounts local repo into container, streams logs, no rebuild needed
just up-d — same but detached; use `just logs` to follow
just build/rebuild — manage the base image
just open/status/down — day-to-day helpers
just ci-smoke — CI path (COPY-based, --quick-test-for-ci)

docker-compose.dev.yml overrides the COPY+quick-exit CMD with a volume
mount and persistent server so code changes are live immediately.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
James Veitch
2026-06-28 16:54:18 +01:00
co-authored by Claude Sonnet 4.6
parent a3ed53636d
commit e94cebe9de
2 changed files with 54 additions and 0 deletions
+42
View File
@@ -0,0 +1,42 @@
dev := "docker compose -f docker-compose.yml -f docker-compose.dev.yml"
ci := "docker compose"
# List available recipes
default:
@just --list
# Build the base image (run once, or after Dockerfile / ComfyUI version bumps)
build:
{{dev}} build
# Start ComfyUI with local repo mounted; stays running, streams logs
up:
{{dev}} up
# Start in the background (detached)
up-d:
{{dev}} up -d
# Stop and remove containers (keeps the image)
down:
{{dev}} down
# Tail ComfyUI logs (works whether up or up-d was used)
logs:
{{dev}} logs -f comfyui
# Open ComfyUI in the browser
open:
open http://localhost:8188
# Show container health / status
status:
{{dev}} ps
# Rebuild base image from scratch, clearing Docker cache
rebuild:
{{dev}} build --no-cache
# CI smoke test — builds from COPY, starts with --quick-test-for-ci, exits
ci-smoke:
{{ci}} up --build --exit-code-from comfyui
+12
View File
@@ -0,0 +1,12 @@
services:
comfyui:
# Mount local repo live — no rebuild needed after code changes.
# Re-installs comfydv deps on each start (fast: jinja2 is likely cached).
volumes:
- .:/app/ComfyUI/custom_nodes/comfydv
command:
- sh
- -c
- |
pip install -q -r /app/ComfyUI/custom_nodes/comfydv/requirements.txt
exec python main.py --cpu --listen 0.0.0.0 --port 8188