-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
50 lines (39 loc) · 1.7 KB
/
Copy pathMakefile
File metadata and controls
50 lines (39 loc) · 1.7 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
.PHONY: env help dev prod down build logs clean producers
help:
@echo "PEI-NWDAF Makefile"
@echo ""
@echo "Usage:"
@echo " make dev Start in DEV mode (all ports exposed)"
@echo " make prod Start in PROD mode (only Nginx exposed)"
@echo " make down Stop all services"
@echo " make build Rebuild and start (dev)"
@echo " make logs Follow logs"
@echo " make clean Stop and remove volumes"
@echo " make producers Start network producers"
env:
@if [ ! -f .env ]; then \
echo "Copying .env.example to .env..."; \
cp .env.example .env; \
CLUSTER_ID=$$(python3 -c "import uuid,base64;print(base64.urlsafe_b64encode(uuid.uuid4().bytes).decode().rstrip('='))"); \
sed -i "s|^KAFKA_CLUSTER_ID=$$|KAFKA_CLUSTER_ID=$$CLUSTER_ID|" .env; \
echo " Generated KAFKA_CLUSTER_ID=$$CLUSTER_ID"; \
fi
producers: env
docker compose -f docker-compose.producers.yml up -d
dev: env
DEV_MODE=true VITE_DEV_MODE=true docker compose up -d --force-recreate
prod: env
DEV_MODE=false VITE_DEV_MODE=false docker compose -f docker-compose.yml -f docker-compose.prod.yml up -d --force-recreate --scale data-storage=2 --scale inference-worker=2 --scale inference-worker=2
down:
docker compose down
dev-build: env
DEV_MODE=true VITE_DEV_MODE=true docker compose up -d --build
prod-build: env
DEV_MODE=false VITE_DEV_MODE=false docker compose -f docker-compose.yml -f docker-compose.prod.yml up -d --build --scale data-storage=2 --scale inference-worker=2
logs:
docker compose logs -f
clean:
@echo "WARNING: This removes ALL Docker volumes and persisted data."
@read -p "Continue? [y/N] " confirm && [ "$$confirm" = "y" ]
docker compose down -v
@echo "All services stopped and volumes removed"