-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathMakefile
More file actions
97 lines (68 loc) · 3.52 KB
/
Makefile
File metadata and controls
97 lines (68 loc) · 3.52 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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
PROJECT := SingerOS
REGISTRY ?= registry.yygu.cn/insmtx/
.PHONY: docker-build-singer docker-build-skill-proxy docker-push docker-release docker-run
docker-build-singer:
docker build -t $(REGISTRY)$(PROJECT)-singer:latest -f deployments/build/Dockerfile.singer .
docker-build-skill-proxy:
docker build -t $(REGISTRY)$(PROJECT)-skill-proxy:latest -f deployments/build/Dockerfile.skill-proxy .
docker-build-all: docker-build-singer docker-build-skill-proxy
# Targets with Docker BuildKit for enhanced cache usage
docker-build-singer-cache:
DOCKER_BUILDKIT=1 docker build --build-arg BUILDKIT_INLINE_CACHE=1 -t $(REGISTRY)$(PROJECT)-singer:latest -f deployments/build/Dockerfile.singer .
docker-build-skill-proxy-cache:
DOCKER_BUILDKIT=1 docker build --build-arg BUILDKIT_INLINE_CACHE=1 -t $(REGISTRY)$(PROJECT)-skill-proxy:latest -f deployments/build/Dockerfile.skill-proxy .
docker-build-cache-all: docker-build-singer-cache docker-build-skill-proxy-cache
docker-push:
docker-push-singer:
docker push $(REGISTRY)$(PROJECT)-singer:latest
docker-push-skill-proxy:
docker push $(REGISTRY)$(PROJECT)-skill-proxy:latest
docker-push-all: docker-push-singer docker-push-skill-proxy
docker-release-singer: docker-build-singer docker-push-singer
docker-release-skill-proxy: docker-build-skill-proxy docker-push-skill-proxy
docker-release-all: docker-build-all docker-push-all
docker-run-singer:
-docker rm -f $(PROJECT)-singer-dev
docker run -d --name $(PROJECT)-singer-dev -p 8080:8080 $(REGISTRY)$(PROJECT)-singer:latest
docker-run-skill-proxy:
-docker rm -f $(PROJECT)-skill-proxy-dev
docker run -d --name $(PROJECT)-skill-proxy-dev -p 8081:8080 $(REGISTRY)$(PROJECT)-skill-proxy:latest
install-protoc:
which protoc || (echo "protoc not found, please install it first" && exit 1)
wget -O /tmp/protoc-34.0-linux-x86_64.zip https://github.com/protocolbuffers/protobuf/releases/download/v34.0/protoc-34.0-linux-x86_64.zip
unzip /tmp/protoc-34.0-linux-x86_64.zip -d protoc
sudo mv protoc/bin/* /usr/local/bin/
sudo mv protoc/include/* /usr/local/include/
generate-proto-go:
which protoc-gen-go || go install google.golang.org/protobuf/cmd/protoc-gen-go@v1.36.11
which protoc-gen-go-grpc || go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@v1.5.1
mkdir -p gen
protoc --go_out=gen --go-grpc_out=gen --proto_path=proto --proto_path=third_party proto/**/*.proto
generate-proto-node:
which protoc-gen-es || npm install -g @bufbuild/protoc-gen-es
protoc --plugin=protoc-gen-es --es_out=. proto/*.proto
.PHONY: run run-foreground run-detached run-build run-foreground-build run-detached-build stop logs
# Default run command - runs docker-compose services in foreground mode (shows logs)
run:
docker-compose -f deployments/env/docker-compose.yml up
# Alternative for explicit foreground mode
run-foreground:
docker-compose -f deployments/env/docker-compose.yml up
# Run services in foreground with forced rebuild
run-build:
docker-compose -f deployments/env/docker-compose.yml up --build
# Alternative for explicit foreground with forced rebuild
run-foreground-build:
docker-compose -f deployments/env/docker-compose.yml up --build
# Run services in detached mode (background)
run-detached:
docker-compose -f deployments/env/docker-compose.yml up -d
# Run services in detached mode with forced build
run-detached-build:
docker-compose -f deployments/env/docker-compose.yml up -d --build
# Stop services
stop:
docker-compose -f deployments/env/docker-compose.yml down
# View service logs
logs:
docker-compose -f deployments/env/docker-compose.yml logs -f