1- # ======== docker.mk ========
1+ # ======== docker.mk ============
22# = Docker build and management =
3- # ======== docker.mk ========
3+ # ======== docker.mk ============
44
55# #@ Docker
66
@@ -15,40 +15,47 @@ export COMPOSE_FILE ?= deploy/docker-compose/docker-compose.yml
1515export COMPOSE_PROJECT_NAME ?= semantic-router
1616
1717# Build all Docker images
18- docker-build-all : docker-build-extproc docker-build-llm-katan docker-build-dashboard docker-build-precommit # # Build all Docker images
18+ docker-build-all : # # Build all Docker images
19+ docker-build-all : docker-build-extproc docker-build-llm-katan docker-build-dashboard docker-build-precommit
1920
2021# Build extproc Docker image
2122docker-build-extproc : # # Build extproc Docker image
23+ docker-build-extproc :
2224 @$(LOG_TARGET )
2325 @echo " Building extproc Docker image..."
2426 @$(CONTAINER_RUNTIME ) build -f Dockerfile.extproc -t $(DOCKER_REGISTRY ) /extproc:$(DOCKER_TAG ) .
2527
2628# Build llm-katan Docker image
2729docker-build-llm-katan : # # Build llm-katan Docker image
30+ docker-build-llm-katan :
2831 @$(LOG_TARGET )
2932 @echo " Building llm-katan Docker image..."
3033 @$(CONTAINER_RUNTIME ) build -f e2e-tests/llm-katan/Dockerfile -t $(DOCKER_REGISTRY ) /llm-katan:$(DOCKER_TAG ) e2e-tests/llm-katan/
3134
3235# Build dashboard Docker image
3336docker-build-dashboard : # # Build dashboard Docker image
37+ docker-build-dashboard :
3438 @$(LOG_TARGET )
3539 @echo " Building dashboard Docker image..."
3640 @$(CONTAINER_RUNTIME ) build -f dashboard/backend/Dockerfile -t $(DOCKER_REGISTRY ) /dashboard:$(DOCKER_TAG ) .
3741
3842# Build precommit Docker image
3943docker-build-precommit : # # Build precommit Docker image
44+ docker-build-precommit :
4045 @$(LOG_TARGET )
4146 @echo " Building precommit Docker image..."
4247 @$(CONTAINER_RUNTIME ) build -f Dockerfile.precommit -t $(DOCKER_REGISTRY ) /precommit:$(DOCKER_TAG ) .
4348
4449# Test llm-katan Docker image locally
4550docker-test-llm-katan : # # Test llm-katan Docker image locally
51+ docker-test-llm-katan :
4652 @$(LOG_TARGET )
4753 @echo " Testing llm-katan Docker image..."
4854 @curl -f http://localhost:8000/v1/models || (echo " Models endpoint failed" && exit 1)
4955 @echo " \n✅ llm-katan Docker image test passed"
5056
5157# Run llm-katan Docker image locally
58+ docker-run-llm-katan : # # Run llm-katan Docker image locally
5259docker-run-llm-katan : docker-build-llm-katan
5360 @$(LOG_TARGET )
5461 @echo " Running llm-katan Docker image on port 8000..."
@@ -57,6 +64,7 @@ docker-run-llm-katan: docker-build-llm-katan
5764 @$(CONTAINER_RUNTIME ) run --rm -p 8000:8000 $(DOCKER_REGISTRY ) /llm-katan:$(DOCKER_TAG )
5865
5966# Run llm-katan with custom served model name
67+ docker-run-llm-katan-custom : # # Run with custom served model name, by append SERVED_NAME=name
6068docker-run-llm-katan-custom :
6169 @$(LOG_TARGET )
6270 @echo " Running llm-katan with custom served model name..."
@@ -70,22 +78,26 @@ docker-run-llm-katan-custom:
7078 llm-katan --model " Qwen/Qwen3-0.6B" --served-model-name " $( SERVED_NAME) " --host 0.0.0.0 --port 8000
7179
7280# Clean up Docker images
81+ docker-clean : # # Clean up Docker images
7382docker-clean :
7483 @$(LOG_TARGET )
7584 @echo " Cleaning up Docker images..."
7685 @$(CONTAINER_RUNTIME ) image prune -f
7786 @echo " Docker cleanup completed"
7887
7988# Push Docker images (for CI/CD)
89+ docker-push-all : # # Build all Docker images
8090docker-push-all : docker-push-extproc docker-push-llm-katan
8191 @$(LOG_TARGET )
8292 @echo " All Docker images pushed successfully"
8393
94+ docker-push-extproc : # # Push extproc Docker image
8495docker-push-extproc :
8596 @$(LOG_TARGET )
8697 @echo " Pushing extproc Docker image..."
8798 @$(CONTAINER_RUNTIME ) push $(DOCKER_REGISTRY ) /extproc:$(DOCKER_TAG )
8899
100+ docker-push-llm-katan : # # Push llm-katan Docker image
89101docker-push-llm-katan :
90102 @$(LOG_TARGET )
91103 @echo " Pushing llm-katan Docker image..."
@@ -97,81 +109,71 @@ REBUILD ?=
97109BUILD_FLAG =$(if $(REBUILD ) ,--build,)
98110
99111# Docker compose shortcuts (no rebuild by default)
112+ docker-compose-up : # # Start services (default includes llm-katan; REBUILD=1 to rebuild)
100113docker-compose-up :
101114 @$(LOG_TARGET )
102115 @echo " Starting services with docker-compose (default includes llm-katan) (REBUILD=$( REBUILD) )..."
103116 @docker compose --profile llm-katan up -d $(BUILD_FLAG )
104117
118+ docker-compose-up-testing : # # Start with testing profile (REBUILD=1 optional)
105119docker-compose-up-testing :
106120 @$(LOG_TARGET )
107121 @echo " Starting services with testing profile (REBUILD=$( REBUILD) )..."
108122 @docker compose --profile testing up -d $(BUILD_FLAG )
109123
124+ docker-compose-up-llm-katan : # # Start with llm-katan profile (REBUILD=1 optional)
110125docker-compose-up-llm-katan :
111126 @$(LOG_TARGET )
112127 @echo " Starting services with llm-katan profile (REBUILD=$( REBUILD) )..."
113128 @docker compose --profile llm-katan up -d $(BUILD_FLAG )
114129
115130# Start core services only (closer to production; excludes llm-katan)
131+ docker-compose-up-core : # # Start core services only (no llm-katan)
116132docker-compose-up-core :
117133 @$(LOG_TARGET )
118134 @echo " Starting core services (no llm-katan) (REBUILD=$( REBUILD) )..."
119135 @docker compose up -d $(BUILD_FLAG )
120136
121137# Explicit rebuild targets for convenience
138+ docker-compose-rebuild : # # Force rebuild then start
122139docker-compose-rebuild : REBUILD=1
123140docker-compose-rebuild : docker-compose-up
124141
142+ docker-compose-rebuild-testing : # # Force rebuild (testing profile)
125143docker-compose-rebuild-testing : REBUILD=1
126144docker-compose-rebuild-testing : docker-compose-up-testing
127145
146+ docker-compose-rebuild-llm-katan : # # Force rebuild (llm-katan profile)
128147docker-compose-rebuild-llm-katan : REBUILD=1
129148docker-compose-rebuild-llm-katan : docker-compose-up-llm-katan
130149
131150docker-compose-down :
151+ docker-compose-down : # # Stop services (default includes llm-katan)
132152 @$(LOG_TARGET )
133153 @echo " Stopping docker-compose services (default includes llm-katan)..."
134154 @docker compose --profile llm-katan down
135155
156+ docker-compose-down-core : # # Stop core services only (no llm-katan)
136157docker-compose-down-core :
137158 @$(LOG_TARGET )
138159 @echo " Stopping core services only (no llm-katan)..."
139160 @docker compose down
140161
162+ docker-compose-down-testing : # # Stop services with testing profile
141163docker-compose-down-testing :
142164 @$(LOG_TARGET )
143165 @echo " Stopping services with testing profile..."
144166 @docker compose --profile testing down
145167
168+ docker-compose-down-llm-katan : # # Stop services with llm-katan profile
146169docker-compose-down-llm-katan :
147170 @$(LOG_TARGET )
148171 @echo " Stopping services with llm-katan profile..."
149172 @docker compose --profile llm-katan down
150173
151174# Help target for Docker commands
152175docker-help :
153- @echo " Docker Make Targets:"
154- @echo " docker-build-all - Build all Docker images"
155- @echo " docker-build-extproc - Build extproc Docker image"
156- @echo " docker-build-llm-katan - Build llm-katan Docker image"
157- @echo " docker-build-dashboard - Build dashboard Docker image"
158- @echo " docker-build-precommit - Build precommit Docker image"
159- @echo " docker-test-llm-katan - Test llm-katan Docker image"
160- @echo " docker-run-llm-katan - Run llm-katan Docker image locally"
161- @echo " docker-run-llm-katan-custom SERVED_NAME=name - Run with custom served model name"
162- @echo " docker-clean - Clean up Docker images"
163- @echo " docker-compose-up - Start services (default includes llm-katan; REBUILD=1 to rebuild)"
164- @echo " docker-compose-up-core - Start core services only (no llm-katan)"
165- @echo " docker-compose-up-testing - Start with testing profile (REBUILD=1 optional)"
166- @echo " docker-compose-up-llm-katan - Start with llm-katan profile (REBUILD=1 optional)"
167- @echo " docker-compose-rebuild - Force rebuild then start"
168- @echo " docker-compose-rebuild-testing - Force rebuild (testing profile)"
169- @echo " docker-compose-rebuild-llm-katan - Force rebuild (llm-katan profile)"
170- @echo " docker-compose-down - Stop services (default includes llm-katan)"
171- @echo " docker-compose-down-core - Stop core services only (no llm-katan)"
172- @echo " docker-compose-down-testing - Stop services with testing profile"
173- @echo " docker-compose-down-llm-katan - Stop services with llm-katan profile"
174- @echo " "
176+ docker-help : # # Show help for Docker-related make targets and environment variables
175177 @echo " Environment Variables:"
176178 @echo " DOCKER_REGISTRY - Docker registry (default: ghcr.io/vllm-project/semantic-router)"
177179 @echo " DOCKER_TAG - Docker tag (default: latest)"
0 commit comments