From 713ae773313e44b277927b8c3bdc79dc81193ea2 Mon Sep 17 00:00:00 2001 From: gaochunxu Date: Mon, 11 Aug 2025 17:06:24 +0800 Subject: [PATCH 1/2] feat(infra): docker compose makefile change --- Makefile | 187 +++++++++++------- release/deployment/docker-compose/.env | 1 + .../docker-compose/docker-compose-debug.yml | 50 +++++ .../docker-compose/docker-compose-dev.yml | 7 + .../docker-compose/docker-compose.yml | 2 +- .../{bootstrap/app => }/model_config.yaml | 0 release/image/debug.Dockerfile | 28 +++ 7 files changed, 198 insertions(+), 77 deletions(-) create mode 100644 release/deployment/docker-compose/docker-compose-debug.yml create mode 100644 release/deployment/docker-compose/docker-compose-dev.yml rename release/deployment/docker-compose/{bootstrap/app => }/model_config.yaml (100%) create mode 100644 release/image/debug.Dockerfile diff --git a/Makefile b/Makefile index cbb93dac4..b48fde9b9 100644 --- a/Makefile +++ b/Makefile @@ -6,6 +6,7 @@ KB_DEPLOY_NAME := coze-loop KB_CHART_PATH :=./release/deployment/helm-chart/charts KB_UMBRELLA_PATH :=./release/deployment/helm-chart/umbrella +DOCKER_COMPOSE_DIR := ./release/deployment/docker-compose #demo-mini: # kubectl -n ingress-nginx patch svc ingress-nginx-controller -p '{"spec":{"type":"LoadBalancer"}}' service/ingress-nginx-controller patched \ # kubectl -n ingress-nginx get svc ingress-nginx-controller -w # 夯住 @@ -89,6 +90,116 @@ kb-up-%: kb-clean: helm list -n $(KB_NAMESPACE) -q | xargs -r -n1 helm uninstall -n $(KB_NAMESPACE) +compose%: + @case "$*" in \ + -up) \ + docker compose \ + -f $(DOCKER_COMPOSE_DIR)/docker-compose.yml \ + --env-file $(DOCKER_COMPOSE_DIR)/.env \ + --profile "*" \ + up ;; \ + -down) \ + docker compose \ + -f $(DOCKER_COMPOSE_DIR)/docker-compose.yml \ + --env-file $(DOCKER_COMPOSE_DIR)/.env \ + --profile "*" \ + down ;; \ + -down-v) \ + docker compose \ + -f $(DOCKER_COMPOSE_DIR)/docker-compose.yml \ + --env-file $(DOCKER_COMPOSE_DIR)/.env \ + --profile "*" \ + down -v ;; \ + -up-dev) \ + docker compose \ + -f $(DOCKER_COMPOSE_DIR)/docker-compose.yml \ + -f $(DOCKER_COMPOSE_DIR)/docker-compose-dev.yml \ + --env-file $(DOCKER_COMPOSE_DIR)/.env \ + --profile "*" \ + up --build ;; \ + -down-dev) \ + docker compose \ + -f $(DOCKER_COMPOSE_DIR)/docker-compose.yml \ + -f $(DOCKER_COMPOSE_DIR)/docker-compose-dev.yml \ + --env-file $(DOCKER_COMPOSE_DIR)/.env \ + --profile "*" \ + down ;; \ + -down-v-dev) \ + docker compose \ + -f $(DOCKER_COMPOSE_DIR)/docker-compose.yml \ + -f $(DOCKER_COMPOSE_DIR)/docker-compose-dev.yml \ + --env-file $(DOCKER_COMPOSE_DIR)/.env \ + --profile "*" \ + down -v ;; \ + -up-debug) \ + docker compose \ + -f $(DOCKER_COMPOSE_DIR)/docker-compose.yml \ + -f $(DOCKER_COMPOSE_DIR)/docker-compose-debug.yml \ + --env-file $(DOCKER_COMPOSE_DIR)/.env \ + --profile "*" \ + up --build ;; \ + -down-debug) \ + docker compose \ + -f $(DOCKER_COMPOSE_DIR)/docker-compose.yml \ + -f $(DOCKER_COMPOSE_DIR)/docker-compose-debug.yml \ + --env-file $(DOCKER_COMPOSE_DIR)/.env \ + --profile "*" \ + down ;; \ + -down-v-debug) \ + docker compose \ + -f $(DOCKER_COMPOSE_DIR)/docker-compose.yml \ + -f $(DOCKER_COMPOSE_DIR)/docker-compose-debug.yml \ + --env-file $(DOCKER_COMPOSE_DIR)/.env \ + --profile "*" \ + down -v ;; \ + -help|*) \ + echo "Usage:"; \ + echo " make compose-up # up base"; \ + echo " make compose-down # down base"; \ + echo " make compose-down-v # down base + volumes"; \ + echo " make compose-up-dev # up base + dev (build)"; \ + echo " make compose-down-dev # down base + dev"; \ + echo " make compose-down-v-dev # down base + dev + volumes"; \ + echo " make compose-up-debug # up base + debug (build)"; \ + echo " make compose-down-debug # down base + debug"; \ + echo " make compose-down-v-debug # down base + debug + volumes"; \ + echo; \ + echo "Notes:"; \ + echo " - '--profile \"*\"' is only meaningful for 'up'; it's not required for 'down'."; \ + echo " - When you used multiple -f files for 'up', run 'down' with the same -f set."; \ + exit 1 ;; \ + esac + +debug: + docker compose \ + -f ./release/deployment/docker-compose/docker-compose.yml \ + -f ./release/deployment/docker-compose/debug/docker-compose.yml \ + --env-file ./release/deployment/docker-compose/.env \ + --profile "*" \ + up --build + +debug-app: + docker compose \ + -f ./release/deployment/docker-compose/docker-compose.yml \ + -f ./release/deployment/docker-compose/debug/remote/docker-compose.yml \ + --env-file ./release/deployment/docker-compose/.env \ + --profile "app" \ + up + +debug-compose: + docker compose \ + -f ./release/deployment/docker-compose/docker-compose.yml \ + -f ./release/deployment/docker-compose/debug/remote/docker-compose.yml \ + --profile "*" \ + config + +debug-down-v: + docker compose \ + -f ./release/deployment/docker-compose/docker-compose.yml \ + -f ./release/deployment/docker-compose/debug/docker-compose.yml \ + --profile "*" \ + down -v + up: docker compose -f ./release/deployment/docker-compose/docker-compose.yml --env-file ./release/deployment/docker-compose/.env --profile "*" up @@ -162,79 +273,3 @@ clean-all: @echo "Pruning builder and system..." @docker builder prune -a -f @docker system prune -a --volumes -f - -build_server: - @echo "Building image..." - @bash $(BUILD_SERVER_SCRIPT) - -sync_db: - @echo "Syncing database..." - @docker compose -f $(COMPOSE_FILE) --env-file $(ENV_FILE) --profile mysql-setup up -d - -dump_db: dump_sql_schema - @echo "Dumping database..." - @bash $(DUMP_DB_SCRIPT) - -sql_init: - @echo "Init sql data..." - @docker compose -f $(COMPOSE_FILE) --env-file $(ENV_FILE) --profile mysql-setup up -d - -middleware: - @echo "Start middleware docker environment for opencoze app" - @docker compose -f $(COMPOSE_FILE) --env-file $(ENV_FILE) --profile middleware up -d --wait - - -web: - @echo "Start web server in docker" - @docker compose -f $(COMPOSE_FILE) --env-file $(ENV_FILE) --profile '*' up -d --wait - -#down: -# @echo "Stop all docker containers" -# @docker compose -f $(COMPOSE_FILE) --profile '*' down - -clean: down - @echo "Remove docker containers and volumes data" - @rm -rf ./docker/data - -python: - @echo "Setting up Python..." - @bash $(SETUP_PYTHON_SCRIPT) - -dump_sql_schema: - @echo "Dumping mysql schema to $(MYSQL_SCHEMA)..." - @. $(ENV_FILE); \ - { echo "SET NAMES utf8mb4;\nCREATE DATABASE IF NOT EXISTS opencoze COLLATE utf8mb4_unicode_ci;"; atlas schema inspect -u $$ATLAS_URL --format "{{ sql . }}" --exclude "atlas_schema_revisions,table_*" | sed 's/CREATE TABLE/CREATE TABLE IF NOT EXISTS/g'; } > $(MYSQL_SCHEMA) - @sed -I '' -E 's/(\))[[:space:]]+CHARSET utf8mb4/\1 ENGINE=InnoDB CHARSET utf8mb4/' $(MYSQL_SCHEMA) - @echo "Dumping mysql schema to helm/charts/opencoze/files/mysql ..." - @cp $(MYSQL_SCHEMA) ./helm/charts/opencoze/files/mysql/ - @cp $(MYSQL_INIT_SQL) ./helm/charts/opencoze/files/mysql/ - -atlas-hash: - @echo "Rehash atlas migration files..." - @(cd ./docker/atlas && atlas migrate hash) - -setup_es_index: - @echo "Setting up Elasticsearch index..." - @bash $(ES_SETUP_SCRIPT) --index-dir $(ES_INDEX_SCHEMA) --docker-host false - -help: - @echo "Usage: make [target]" - @echo "" - @echo "Targets:" - @echo " debug - Start the debug environment." - @echo " env - Setup env file." - @echo " fe - Build the frontend." - @echo " server - Build and run the server binary." - @echo " build_server - Build the server binary." - @echo " sync_db - Sync opencoze_latest_schema.hcl to the database." - @echo " dump_db - Dump the database to opencoze_latest_schema.hcl and migrations files." - @echo " sql_init - Init sql data..." - @echo " dump_sql_schema - Dump the database schema to sql file." - @echo " middleware - Setup middlewares docker environment, but exclude the server app." - @echo " web - Setup web docker environment, include middlewares docker." - @echo " down - Stop the docker containers." - @echo " clean - Stop the docker containers and clean volumes." - @echo " python - Setup python environment." - @echo " atlas-hash - Rehash atlas migration files." - @echo " setup_es_index - Setup elasticsearch index." - @echo " help - Show this help message." diff --git a/release/deployment/docker-compose/.env b/release/deployment/docker-compose/.env index e63af422f..42a17ea2b 100644 --- a/release/deployment/docker-compose/.env +++ b/release/deployment/docker-compose/.env @@ -3,6 +3,7 @@ COZE_LOOP_APP_IMAGE_REGISTRY=compose-cn-beijing.cr.volces.com COZE_LOOP_APP_IMAGE_REPOSITORY=coze COZE_LOOP_APP_IMAGE_NAME=coze-loop COZE_LOOP_APP_IMAGE_TAG=latest +COZE_LOOP_APP_DEBUG_PORT=40000 # redis COZE_LOOP_REDIS_IMAGE_REGISTRY=docker.io diff --git a/release/deployment/docker-compose/docker-compose-debug.yml b/release/deployment/docker-compose/docker-compose-debug.yml new file mode 100644 index 000000000..5730fefca --- /dev/null +++ b/release/deployment/docker-compose/docker-compose-debug.yml @@ -0,0 +1,50 @@ +services: + app: + build: + context: ../../.. + dockerfile: ./release/image/debug.Dockerfile + image: "coze/coze-loop:debug" + ports: + - "${COZE_LOOP_APP_DEBUG_PORT}:40000" + entrypoint: + - sh + - -c + - | + exec 2>&1 + set -e + + print_banner() { + msg="$$1" + side=30 + content=" $$msg " + content_len=$${#content} + line_len=$$((side * 2 + content_len)) + + line=$$(printf '*%.0s' $$(seq 1 "$$line_len")) + side_eq=$$(printf '*%.0s' $$(seq 1 "$$side")) + + printf "%s\n%s%s%s\n%s\n" "$$line" "$$side_eq" "$$content" "$$side_eq" "$$line" + } + + print_banner "Starting..." + + export ROCKETMQ_GO_LOG_LEVEL=error + + ( + while true; do + if sh /coze-loop/bootstrap/healthcheck.sh; then + print_banner "Completed!" + break + else + sleep 1 + fi + done + )& + + exec dlv \ + exec /coze-loop/bin/main \ + --headless \ + --listen=:40000 \ + --api-version=2 \ + --accept-multiclient \ + --log \ No newline at end of file diff --git a/release/deployment/docker-compose/docker-compose-dev.yml b/release/deployment/docker-compose/docker-compose-dev.yml new file mode 100644 index 000000000..b096015e4 --- /dev/null +++ b/release/deployment/docker-compose/docker-compose-dev.yml @@ -0,0 +1,7 @@ +services: + + app: + build: + context: ../../.. + dockerfile: ./release/image/Dockerfile + image: "coze/coze-loop:dev" \ No newline at end of file diff --git a/release/deployment/docker-compose/docker-compose.yml b/release/deployment/docker-compose/docker-compose.yml index a70a543ed..535565b61 100644 --- a/release/deployment/docker-compose/docker-compose.yml +++ b/release/deployment/docker-compose/docker-compose.yml @@ -10,7 +10,7 @@ services: volumes: - nginx_data:/coze-loop/resources - ./bootstrap/app:/coze-loop/bootstrap - - ./bootstrap/app/model_config.yaml:/coze-loop/conf/model_config.yaml + - ./model_config.yaml:/coze-loop/conf/model_config.yaml depends_on: redis: condition: service_healthy diff --git a/release/deployment/docker-compose/bootstrap/app/model_config.yaml b/release/deployment/docker-compose/model_config.yaml similarity index 100% rename from release/deployment/docker-compose/bootstrap/app/model_config.yaml rename to release/deployment/docker-compose/model_config.yaml diff --git a/release/image/debug.Dockerfile b/release/image/debug.Dockerfile new file mode 100644 index 000000000..c37039e42 --- /dev/null +++ b/release/image/debug.Dockerfile @@ -0,0 +1,28 @@ +# golang极简镜像,编译拿到服务端产物 +FROM golang:1.24-alpine AS backend_builder + +# 1. 安装git(用于下载go mod依赖) +RUN apk add --no-cache git + +# 2. 安装dlv(用于调试) +RUN go install "github.com/go-delve/delve/cmd/dlv@v1.25.1" + +WORKDIR /coze-loop + +# 2. 下载并缓存go mod依赖 +COPY ./backend/go.mod ./backend/go.sum /coze-loop/src/backend/ +RUN go mod download -C ./src/backend -x + +# 3. 编译服务端 +COPY ./backend/ /coze-loop/src/backend/ +RUN mkdir -p ./bin && \ + go -C /coze-loop/src/backend build -gcflags="all=-N -l" -buildvcs=false -o /coze-loop/bin/main "./cmd" + +# 最终镜像(coze-loop),极简镜像 +FROM compose-cn-beijing.cr.volces.com/coze/coze-loop:latest + +WORKDIR /coze-loop + +# 抽产物 +COPY --from=backend_builder /coze-loop/bin/main /coze-loop/bin/main +COPY --from=backend_builder /go/bin/dlv /usr/local/bin/dlv \ No newline at end of file From f82f752d9e6cdc58862c9301d980d3e02d3f96d9 Mon Sep 17 00:00:00 2001 From: gaochunxu Date: Mon, 11 Aug 2025 21:05:20 +0800 Subject: [PATCH 2/2] feat(infra): update helm release --- Makefile | 276 ++++++------------ .../charts/app/templates/configmap.yaml | 4 +- .../charts/app/templates/deployment.yaml | 9 +- .../helm-chart/charts/nginx/values.yaml | 7 +- .../deployment/helm-chart/umbrella/Chart.lock | 27 -- .../umbrella/charts/coze-loop-app-1.0.0.tgz | Bin 16781 -> 0 bytes .../charts/coze-loop-clickhouse-1.0.0.tgz | Bin 2331 -> 0 bytes .../umbrella/charts/coze-loop-minio-1.0.0.tgz | Bin 1969 -> 0 bytes .../umbrella/charts/coze-loop-mysql-1.0.0.tgz | Bin 2066 -> 0 bytes .../umbrella/charts/coze-loop-nginx-1.0.0.tgz | Bin 3190 -> 0 bytes .../umbrella/charts/coze-loop-redis-1.0.0.tgz | Bin 1910 -> 0 bytes .../charts/coze-loop-rmq-broker-1.0.0.tgz | Bin 1970 -> 0 bytes .../charts/coze-loop-rmq-namesrv-1.0.0.tgz | Bin 1792 -> 0 bytes .../umbrella/examples/mini.values.yaml | 37 --- .../examples/minikube/alone.values.yaml | 60 ++++ .../bundle.values.yaml} | 9 +- .../examples/minikube/mixed.values.yaml | 40 +++ .../bootstrap => umbrella}/model_config.yaml | 0 .../nginx => umbrella}/templates/ingress.yaml | 9 +- .../umbrella/templates/model-configmap.yaml | 7 + .../helm-chart/umbrella/values.yaml | 5 + 21 files changed, 216 insertions(+), 274 deletions(-) delete mode 100644 release/deployment/helm-chart/umbrella/Chart.lock delete mode 100644 release/deployment/helm-chart/umbrella/charts/coze-loop-app-1.0.0.tgz delete mode 100644 release/deployment/helm-chart/umbrella/charts/coze-loop-clickhouse-1.0.0.tgz delete mode 100644 release/deployment/helm-chart/umbrella/charts/coze-loop-minio-1.0.0.tgz delete mode 100644 release/deployment/helm-chart/umbrella/charts/coze-loop-mysql-1.0.0.tgz delete mode 100644 release/deployment/helm-chart/umbrella/charts/coze-loop-nginx-1.0.0.tgz delete mode 100644 release/deployment/helm-chart/umbrella/charts/coze-loop-redis-1.0.0.tgz delete mode 100644 release/deployment/helm-chart/umbrella/charts/coze-loop-rmq-broker-1.0.0.tgz delete mode 100644 release/deployment/helm-chart/umbrella/charts/coze-loop-rmq-namesrv-1.0.0.tgz delete mode 100644 release/deployment/helm-chart/umbrella/examples/mini.values.yaml create mode 100644 release/deployment/helm-chart/umbrella/examples/minikube/alone.values.yaml rename release/deployment/helm-chart/umbrella/examples/{default.values.yaml => minikube/bundle.values.yaml} (87%) create mode 100644 release/deployment/helm-chart/umbrella/examples/minikube/mixed.values.yaml rename release/deployment/helm-chart/{charts/app/bootstrap => umbrella}/model_config.yaml (100%) rename release/deployment/helm-chart/{charts/nginx => umbrella}/templates/ingress.yaml (67%) create mode 100644 release/deployment/helm-chart/umbrella/templates/model-configmap.yaml diff --git a/Makefile b/Makefile index b48fde9b9..47bd61e8c 100644 --- a/Makefile +++ b/Makefile @@ -1,94 +1,29 @@ -.PHONY: debug fe server sync_db dump_db middleware web down clean python help - -KB_NAMESPACE := coze-loop -KB_RELEASE_NAME := coze-loop -KB_DEPLOY_NAME := coze-loop -KB_CHART_PATH :=./release/deployment/helm-chart/charts -KB_UMBRELLA_PATH :=./release/deployment/helm-chart/umbrella - DOCKER_COMPOSE_DIR := ./release/deployment/docker-compose -#demo-mini: -# kubectl -n ingress-nginx patch svc ingress-nginx-controller -p '{"spec":{"type":"LoadBalancer"}}' service/ingress-nginx-controller patched \ -# kubectl -n ingress-nginx get svc ingress-nginx-controller -w # 夯住 -# sudo minikube tunnel # 新终端夯住 -# # 第一个命令的EXTERNAL-IP配hosts -# curl -v http://127.0.0.1:18080 -H 'Host: cozeloop.mini.local' # 验证 - - - -chart-tpl-alone-%: - helm template $(KB_RELEASE_NAME) $(KB_UMBRELLA_PATH) \ - --namespace $(KB_NAMESPACE) \ - -f $(KB_UMBRELLA_PATH)/examples/alone.values.yaml \ - | yq eval '. | select(.kind == "Deployment" and .metadata.name == "coze-loop-$*")' - - -chart-tpl-default-%: - helm template $(KB_RELEASE_NAME) $(KB_UMBRELLA_PATH) \ - --namespace $(KB_NAMESPACE) \ - -f $(KB_UMBRELLA_PATH)/examples/default.values.yaml \ - | yq eval '. | select(.kind == "Deployment" and .metadata.name == "coze-loop-$*")' - - -chart-up-%: - helm upgrade \ - --install --force $(KB_RELEASE_NAME)-$* $(KB_UMBRELLA_PATH) \ - --namespace $(KB_NAMESPACE) --create-namespace \ - -f $(KB_UMBRELLA_PATH)/values.yaml \ - -f $(KB_UMBRELLA_PATH)/examples/$*.values.yaml - -chart: - @echo "🔧 Building Helm dependencies for umbrella chart..." - helm dependency build $(KB_UMBRELLA_PATH) - -mini-ingress-on: - minikube addons enable ingress -svc: - kubectl get svc -n $(KB_DEPLOY_NAME) -o wide +HELM_CHART_DIR := ./release/deployment/helm-chart/umbrella +HELM_NAMESPACE := coze-loop +HELM_RELEASE := coze-loop -ingress: - kubectl get ingress -n coze-loop +.PHONY: image mini-start mini-tunnel -kb-ctx: - kubectl config get-contexts -kb-use-ctx-%: -ifeq ($*,mini) - kubectl config use-context minikube -else - kubectl config use-context $$(kubectl config get-contexts -o name | grep -v '^minikube$$') -endif - kubectl config current-context +.PHONY: FORCE +FORCE: -kb-ns: - kubectl get namespaces - -kb-pod: - kubectl get pods -n $(KB_NAMESPACE) - -kb-del-%: - helm uninstall $(KB_DEPLOY_NAME)-$* -n $(KB_NAMESPACE) - -kb-log-%: - @echo "Getting logs for the latest pod of $(KB_DEPLOY_NAME)-$* ..." - @POD=$$(kubectl get pod -n $(KB_NAMESPACE) -l app=$(KB_DEPLOY_NAME)-$* -o jsonpath='{.items[0].metadata.name}'); \ - for c in $$(kubectl get pod $$POD -n $(KB_NAMESPACE) -o jsonpath='{.spec.initContainers[*].name} {.spec.containers[*].name}'); do \ - echo "========== logs from container: $$c =========="; \ - kubectl logs -n $(KB_NAMESPACE) -f $$POD -c $$c --tail=100; \ - done +image: + docker buildx build \ + --platform linux/amd64,linux/arm64 \ + --progress=plain \ + --push \ + -f ./release/image/Dockerfile \ + -t compose-cn-beijing.cr.volces.com/coze/coze-loop:latest \ + . -kb-up-%: - helm upgrade \ - --install --force $(KB_RELEASE_NAME)-$* $(KB_CHART_PATH)/$* \ - --namespace $(KB_NAMESPACE) --create-namespace \ - -f $(KB_CHART_PATH)/$*/values.yaml && \ - kubectl rollout status deployment/$(KB_DEPLOY_NAME)-$* -n $(KB_NAMESPACE) && \ - POD=$$(kubectl get pod -n $(KB_NAMESPACE) -l app=$(KB_DEPLOY_NAME)-$* -o jsonpath='{.items[0].metadata.name}') && \ - for c in $$(kubectl get pod $$POD -n $(KB_NAMESPACE) -o jsonpath='{.spec.initContainers[*].name} {.spec.containers[*].name}'); do \ - echo "========== logs from container: $$c =========="; \ - kubectl logs -n $(KB_NAMESPACE) -f $$POD -c $$c; \ - done + docker pull compose-cn-beijing.cr.volces.com/coze/coze-loop:latest -kb-clean: - helm list -n $(KB_NAMESPACE) -q | xargs -r -n1 helm uninstall -n $(KB_NAMESPACE) + docker run --rm coze-loop:latest du -sh /coze-loop/bin + docker run --rm coze-loop:latest du -sh /coze-loop/resources + docker run --rm coze-loop:latest du -sh /coze-loop/conf + docker run --rm coze-loop:latest du -sh /coze-loop compose%: @case "$*" in \ @@ -170,106 +105,77 @@ compose%: exit 1 ;; \ esac -debug: - docker compose \ - -f ./release/deployment/docker-compose/docker-compose.yml \ - -f ./release/deployment/docker-compose/debug/docker-compose.yml \ - --env-file ./release/deployment/docker-compose/.env \ - --profile "*" \ - up --build - -debug-app: - docker compose \ - -f ./release/deployment/docker-compose/docker-compose.yml \ - -f ./release/deployment/docker-compose/debug/remote/docker-compose.yml \ - --env-file ./release/deployment/docker-compose/.env \ - --profile "app" \ - up - -debug-compose: - docker compose \ - -f ./release/deployment/docker-compose/docker-compose.yml \ - -f ./release/deployment/docker-compose/debug/remote/docker-compose.yml \ - --profile "*" \ - config - -debug-down-v: - docker compose \ - -f ./release/deployment/docker-compose/docker-compose.yml \ - -f ./release/deployment/docker-compose/debug/docker-compose.yml \ - --profile "*" \ - down -v - -up: - docker compose -f ./release/deployment/docker-compose/docker-compose.yml --env-file ./release/deployment/docker-compose/.env --profile "*" up - -up-redis: - docker compose -f ./release/deployment/docker-compose/docker-compose.yml --env-file ./release/deployment/docker-compose/.env --profile "redis" up - -up-mysql: - docker compose -f ./release/deployment/docker-compose/docker-compose.yml --env-file ./release/deployment/docker-compose/.env --profile "mysql" up - -up-clickhouse: - docker compose -f ./release/deployment/docker-compose/docker-compose.yml --env-file ./release/deployment/docker-compose/.env --profile "clickhouse" up - -up-minio: - docker compose -f ./release/deployment/docker-compose/docker-compose.yml --env-file ./release/deployment/docker-compose/.env --profile "minio" up - -up-rmq: - docker compose -f ./release/deployment/docker-compose/docker-compose.yml --env-file ./release/deployment/docker-compose/.env --profile "rmq" up - -up-nginx: - docker compose -f ./release/deployment/docker-compose/docker-compose.yml --env-file ./release/deployment/docker-compose/.env --profile "nginx" up - -down: - docker compose -f ./release/deployment/docker-compose/docker-compose.yml ---profile '*' down - -down-v: - docker compose -f ./release/deployment/docker-compose/docker-compose.yml --profile '*' down -v - -image: - @echo "Building and pushing multi-arch coze-loop images (amd64 + arm64)..." - - docker buildx build \ - --platform linux/amd64,linux/arm64 \ - --progress=plain \ - --push \ - -f ./release/image/Dockerfile \ - -t compose-cn-beijing.cr.volces.com/coze/coze-loop:latest \ - . - - @echo "Validating image size from coze-loop:latest (amd64 only)..." - - docker pull compose-cn-beijing.cr.volces.com/coze/coze-loop:latest - - docker run --rm coze-loop:latest du -sh /coze-loop/bin - docker run --rm coze-loop:latest du -sh /coze-loop/resources - docker run --rm coze-loop:latest du -sh /coze-loop/conf - docker run --rm coze-loop:latest du -sh /coze-loop - -clean-image: - docker rmi -f coze-loop-app:latest - docker builder prune --force - -into-image: - docker run -it --rm open-coze-loop-app:latest /bin/bash - -clean-all: - @echo "Stopping containers..." - @docker ps -aq | xargs -r docker stop - - @echo "Removing containers..." - @docker ps -aq | xargs -r docker rm -f - - @echo "Removing images..." - @docker images -aq | xargs -r docker rmi -f - - @echo "Removing volumes..." - @docker volume ls -q | xargs -r docker volume rm +helm%: + @case "$*" in \ + -chart) \ + helm dependency build $(HELM_CHART_DIR) ;; \ + -chart-clean) \ + rm -rf $(HELM_CHART_DIR)/charts $(HELM_CHART_DIR)/Chart.lock ;; \ + -ctx) \ + kubectl config get-contexts ;; \ + -ctx-*) \ + ctx="$*"; \ + ctx="$${ctx#-ctx-}"; \ + echo "switch to context: $$ctx"; \ + kubectl config use-context "$$ctx" ;; \ + -ns) \ + kubectl get namespaces ;; \ + -pod) \ + kubectl get pods -n $(HELM_NAMESPACE) ;; \ + -svc) \ + kubectl get svc -n $(HELM_NAMESPACE) -o wide ;; \ + -ingress) \ + kubectl get ingress -n $(HELM_NAMESPACE) ;; \ + -up) \ + helm upgrade \ + --install --force $(HELM_RELEASE) $(HELM_CHART_DIR) \ + --namespace $(HELM_NAMESPACE) --create-namespace \ + -f $(HELM_CHART_DIR)/values.yaml ;; \ + -down) \ + helm list -n $(HELM_NAMESPACE) -q \ + | \ + xargs -r -n1 helm uninstall -n $(HELM_NAMESPACE) ;; \ + -logf-*) \ + app="$*"; \ + app="$${app#-logf-}"; \ + kubectl -n $(HELM_NAMESPACE) logs \ + -l app=$(HELM_RELEASE)-$$app \ + --all-containers=true \ + --tail=100 \ + --prefix=true \ + --max-log-requests=10 \ + -f ;; \ + -tpl-*) \ + app="$*"; \ + app="$${app#-tpl-}"; \ + helm template $(HELM_RELEASE) $(HELM_CHART_DIR) \ + --namespace $(HELM_NAMESPACE) \ + -f $(HELM_CHART_DIR)/values.yaml | \ + APP="$$app" yq eval '. | select(.kind == "Deployment" and .metadata.name == ("coze-loop-" + strenv(APP)))' - ;; \ + --help|*) \ + echo "Usage:"; \ + echo " make helm-chart # build chart dependencies (helm dependency build)"; \ + echo " make helm-chart-clean # remove chart dependencies"; \ + echo " make helm-ctx # list all kubectl contexts"; \ + echo " make helm-ctx- # switch to a specific kubectl context"; \ + echo " make helm-ns # list all namespaces"; \ + echo " make helm-pod # list all pods in namespace $(HELM_NAMESPACE)"; \ + echo " make helm-svc # list all services in namespace $(HELM_NAMESPACE)"; \ + echo " make helm-ingress # list all ingress resources in namespace $(HELM_NAMESPACE)"; \ + echo " make helm-up # upgrade/install release $(HELM_RELEASE) from chart"; \ + echo " make helm-down # uninstall all releases in namespace $(HELM_NAMESPACE)"; \ + echo " make helm-logf- # follow logs of all containers in pods with app=$(HELM_RELEASE)-"; \ + echo " make helm-tpl- # render Deployment manifest of coze-loop- locally"; \ + echo; \ + echo "Notes:"; \ + echo " - Ensure $(HELM_NAMESPACE) and $(HELM_RELEASE) are set before running commands."; \ + echo " - Commands with '-' suffix accept a dynamic argument (e.g., helm-ctx-xxx, helm-logf-app)."; \ + echo " - '-tpl-*' renders manifests without applying them to the cluster."; \ + exit 1 ;; \ + esac - @echo "Removing custom networks..." - @docker network ls | awk '/bridge|host|none/ {next} NR>1 {print $$1}' | xargs -r docker network rm +mini-start: + minikube start --addons=ingress - @echo "Pruning builder and system..." - @docker builder prune -a -f - @docker system prune -a --volumes -f +mini-tunnel: + minikube tunnel diff --git a/release/deployment/helm-chart/charts/app/templates/configmap.yaml b/release/deployment/helm-chart/charts/app/templates/configmap.yaml index 23dd84cbf..c131eb546 100644 --- a/release/deployment/helm-chart/charts/app/templates/configmap.yaml +++ b/release/deployment/helm-chart/charts/app/templates/configmap.yaml @@ -6,6 +6,4 @@ data: entrypoint.sh: |- {{ .Files.Get "bootstrap/entrypoint.sh" | nindent 4 }} healthcheck.sh: |- -{{ .Files.Get "bootstrap/healthcheck.sh" | nindent 4 }} - model_config.yaml: |- -{{ .Files.Get "bootstrap/model_config.yaml" | nindent 4 }} \ No newline at end of file +{{ .Files.Get "bootstrap/healthcheck.sh" | nindent 4 }} \ No newline at end of file diff --git a/release/deployment/helm-chart/charts/app/templates/deployment.yaml b/release/deployment/helm-chart/charts/app/templates/deployment.yaml index e89a148f0..38e54b4f6 100644 --- a/release/deployment/helm-chart/charts/app/templates/deployment.yaml +++ b/release/deployment/helm-chart/charts/app/templates/deployment.yaml @@ -53,11 +53,10 @@ spec: - name: bootstrap configMap: name: {{ include "configmap.name" . }} + - name: model-config + configMap: + name: "coze-loop-model-configmap" items: - - key: entrypoint.sh - path: entrypoint.sh - - key: healthcheck.sh - path: healthcheck.sh - key: model_config.yaml path: model_config.yaml initContainers: @@ -175,7 +174,7 @@ spec: - name: bootstrap mountPath: "/coze-loop/bootstrap" readOnly: true - - name: bootstrap + - name: model-config mountPath: "/coze-loop/conf/model_config.yaml" subPath: "model_config.yaml" readOnly: true diff --git a/release/deployment/helm-chart/charts/nginx/values.yaml b/release/deployment/helm-chart/charts/nginx/values.yaml index f586089c9..9e308a58a 100644 --- a/release/deployment/helm-chart/charts/nginx/values.yaml +++ b/release/deployment/helm-chart/charts/nginx/values.yaml @@ -1,5 +1,5 @@ service: - type: NodePort + type: LoadBalancer port: 8082 targetPort: 80 @@ -30,11 +30,6 @@ liveness: timeoutSeconds: 5 shutdownFailureTimes: 8 -ingress: - enabled: true - host: cozeloop.gcx.local - className: cozeloop-alb - proxy: oss: protocol: "http" diff --git a/release/deployment/helm-chart/umbrella/Chart.lock b/release/deployment/helm-chart/umbrella/Chart.lock deleted file mode 100644 index 26ed5d76a..000000000 --- a/release/deployment/helm-chart/umbrella/Chart.lock +++ /dev/null @@ -1,27 +0,0 @@ -dependencies: -- name: coze-loop-app - repository: file://../charts/app - version: 1.0.0 -- name: coze-loop-nginx - repository: file://../charts/nginx - version: 1.0.0 -- name: coze-loop-redis - repository: file://../charts/redis - version: 1.0.0 -- name: coze-loop-mysql - repository: file://../charts/mysql - version: 1.0.0 -- name: coze-loop-clickhouse - repository: file://../charts/clickhouse - version: 1.0.0 -- name: coze-loop-minio - repository: file://../charts/minio - version: 1.0.0 -- name: coze-loop-rmq-namesrv - repository: file://../charts/rmq-namesrv - version: 1.0.0 -- name: coze-loop-rmq-broker - repository: file://../charts/rmq-broker - version: 1.0.0 -digest: sha256:131b165d94e69d9029d1b0991bb8bd19917a8b4641e59922f80f9792e87ac1c6 -generated: "2025-08-08T00:34:39.373081+08:00" diff --git a/release/deployment/helm-chart/umbrella/charts/coze-loop-app-1.0.0.tgz b/release/deployment/helm-chart/umbrella/charts/coze-loop-app-1.0.0.tgz deleted file mode 100644 index d9063e72b3945d1916e356bc9c55925f59daa877..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16781 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 J41)s`0{|^Of_(r0 diff --git a/release/deployment/helm-chart/umbrella/charts/coze-loop-clickhouse-1.0.0.tgz b/release/deployment/helm-chart/umbrella/charts/coze-loop-clickhouse-1.0.0.tgz deleted file mode 100644 index b09f6a6f44b078104802750be9858bafd2f14ed2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2331 zcmV+$3FP)4iwG0|00000|0w_~VMtOiV@ORlOnEsqVl!4SWK%V1T2nbTPgYhoO;>Dc zVQyr3R8em|NM&qo0PI@ta@#f%&u2cxmUUXYcOofUcBZPVnH$G$GfiVp-1cVfa-)IC zm4q<}FaYR8QT*;V;6H&BB{^}!s zC&9hPYA)_iLL{NTqf}JzKHTg(BuT1AMl>qzM5sbZ6P>l4h!1E^3!GG^1%5&nLuihS z!%2*NXggDmo+a1^k|d0V#3*xa%7MCG;04ZOTjH-tt^R*QSc>Y40l)_T?{Hoc> zqpklx1Sym^G{n9GkbCF}OO;0X;=%z)gw%cbJ_rKSP2>di#iGffF_~nN5+_t?IqQQP ziSQbwM}?cUCqhvzvYy5HGF`c>-P$ozLFr~gP5R*G_+y@vl(7rJXgKS`i}5R=FC;4D zy6C#ZP@+~wTXmW<{T-F{xQ-KH!o(~_uJie3D0CuHuKUn+03xEvFXr)r=xHBZ|At7P z(JQ|`YmG9dJcF+vB?<8YB^A*nhJr_`58c3V7`;J`N||xY(b84#p;HEJ58 zNEeI;Ms%9$NW9}`gtAoPuQbMt+aal*8r`WvY3z+-lCs=NM5%W|Mz$Ty(upQlL}eS5 z<8!V1YY0=NMNB{BsGL9bt1WT>tPRedY@0v!`Q6g}s1^S;#!2RV{%DFUL8&~QeEzFo z6aM#}HRHc$M+eWg`2P?zpLZa_G35xZ6`XknDO~8>-ew*@pF<)k*JE&>Di^#wL3l-C zgxg!k=s+H2+>WguP#*UD;!s`wvGO z{C|-*-2(tN_Gym29g_sEmfJ zb7d#vxw|W57-}K&Y%?Z0oW3Mi$W-0{W})?tX%w0??SfO2_;ve@pz z%8DzEorS&H!%i!gUKx2>JbUmF-ljrhIgO1qiFTu}6D zvJZ2(U1F}l*^&s$S4`h(yz@Jz(xD0EDBBHwmtC~>uP)O}D%vD2tg@74=EbJvops4X zNc(`~bFNmBm)9(1MSad&RNw0A@*T=bS4&!3w<`04MWw6#c+|>a^#Rv!>$3LM0d-Ta zfeI3xb2jUPmMPlji{G>_?&SPmr=yqW=NF@smoH9!{^|U;%hSi)pKpx4--K8Hu^5P)DAQ{XxRm#K7J}8J%fjh}6jxYZ4ZdGs?Yi0gy*Bi64!Ck`0LrPR zggr+_W^LG6&d#%Ix=s5fE1|a%Zxn!=8k(ixHWhWAriO7*FrG?OQ^BGYt7s`NZ^Pri zAZ>{M3%t1BP2k4-zZw5`pY@LRxAFf&P;3652b&wh{^eImet~$MUZLcuO(Z1zE23!F zA*r4^N=wQo&kKe5{gs7HhQ~9l^$>S)tJUN!do2FPw&tIYHu`@ae%=cJHu?WyujT${ zoBuxut?>VB*FP`sucy^_O{vRtI>(T<1Zb9&h_J|@%6QuP&ZvmQR^?GiErYVZX}Cku zRWD53acPge!|SQl|5sFIKX;4`{(sQx^_J@YL2v8-4?$mlRU}W2W3nvRAAZwy6l&<8 z<75|QqbtHW%H2JfI{>ko9J@PR*LVYs@c1Bb@daStzT-ty$p>vZ0nF#DSkb>;@GL{H5NyaH?>W@=(NyM5Qnqg(RHfu$ygLTTfk_2@;L22qQeCd@_`T zMP$t+khs+e%}uUK26$t3y*GN8Tjpr%cC$XY*JaH!Df;rvS7*|Et77x zQSPj2=nVW4k_lN+P+={zg`XfQlg|*~gs#W9k4zf}^wdP4S{z@}bFNN_g~zM7E8Hw4 z-liyL;9j1-JU#gpx_R>u{0MJ+o-&rjq>pW@EO0003y9 BnnnNs diff --git a/release/deployment/helm-chart/umbrella/charts/coze-loop-minio-1.0.0.tgz b/release/deployment/helm-chart/umbrella/charts/coze-loop-minio-1.0.0.tgz deleted file mode 100644 index 7e433bd702a1ba0ead79630d6d9717f5aa767ef8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1969 zcmV;i2Tu4OiwG0|00000|0w_~VMtOiV@ORlOnEsqVl!4SWK%V1T2nbTPgYhoO;>Dc zVQyr3R8em|NM&qo0PI@tZsRr*&u2cxRGV#+-dUC%CqY%Dz#-}O7T4Vvn_dsN+k?SK zW19#?YDvm_UT@z0K+3WuS^m=|NV=$}#X2H~!y!5I)67tj{DdtoW!g%ZV6uHVrpowJ zn(%{1qaX-^vtG~r20>8&4Z1;a&^ZlyrzgGM*;)4>==8ds?g0dkr^0&5w4v%Cc<@~H z#eE?}Q}!z=&7=rn(j_!a7mu78)P}^UBgInV+AifMwAKP|thK=3ktYyYlOcj87(&gQ zh?%As0!>rSB5FmDNg=-D2Yx`Fd;NcQs{8+h@(lIk0>Bpk?{tD*-T!;1y}kcG1!+_h z7GX#La$mjVnKr0i_X$8Ml?mayAP8(XRUY1Q!b|o3X`kn;OA0i!i3Nv05LW6jeYD>GY-LPJ6#60*(wl8F=V3(gObv;{iVvN z5+)p?{iJAweN;@wHyB9~>kv8tA)HN6pw?CcYhz~7dulg97*rF=D~*OFD6=Kwi5)u5 zOe{Z&SCsKg;V&#f$4zKv##VNwQH9`H1>NRRtv^Z?m$%0wohBDPt+i+^cK5;W9C#mm5PHiLza)X~bfE>f^pTsef# zEi#*d|B7+c{!eI19#;4I&mfqHQ5fif^V+JHZkAQ|=&G>i-tIpft@rou=x^x`r=hD4?x1h~Z#Ospx_)={htRnwVpb3!NvM4<{Rh1E zEfZ}U-2J!2K-Eaw-tvSiS*KsZ&&uecTH9Ch7OShl|1FVzlQw^?Oud?cuALiz31%4O zSIFtK3AqdH{Bj|=zJKXj;9m@{Rh{b+>h*N2qvp&L2;MV-Vb5^ha_ImsKzbB!_{67yiw}kzxV4hzf-etF_1R5LK$o4JOENaor zjEOdiiP6iy6D z`=2MFHU968{`ckm)wFuol)6Z#a|~(9Xr^g_2+NeH2xaq+jpkv{x|}GjWJBf88FomZ zsx^rnSM}V7y93qze@#*LL33=o|Lq1V_5a{(fB*X=^x~^|`a+1!bD;af*BzqKKnn?R z7iEK6Dg>&dW0(BhgTq9Rz*{yAIEstI*^Bw3LkA`> zZ$3J*BH&x-!e7b*j*rQl@8a-iep&a;w=exbe*=d{8b3e>yu(6{cYHioW`G|y4X`X; zE_-R{*1>$k73 z2k)-0e{qF@3-55YS}wTv8rX}xe050CbMFyyL;yaH8An&G_#WaM4cQR%7~1Qdyn0*m zJ(w|y0!J&Wx|B)E(O~?QH}AhyNblU=$aPU5(Ht>#pI8A583Bl;Kyv)`+`8QKU@;aI zls>xJe+K$ow5w@6WR7j|UuPx$JMVP%_dicUCHyZ?Kgtw`_XMCd1aE9i8n)Y9MwE}G zHsNA00960eLxmf05$*s D!Ta;B diff --git a/release/deployment/helm-chart/umbrella/charts/coze-loop-mysql-1.0.0.tgz b/release/deployment/helm-chart/umbrella/charts/coze-loop-mysql-1.0.0.tgz deleted file mode 100644 index 531499317b9995ed20768c4ef5ebf16a6fcf4876..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2066 zcmV+t2<`VDiwG0|00000|0w_~VMtOiV@ORlOnEsqVl!4SWK%V1T2nbTPgYhoO;>Dc zVQyr3R8em|NM&qo0PI@*a@#f%&)Vgc;_xVvB|zF><9k+kBmx?%035s}&( zlbF4DH1d7l-|KYjukZWyUw_;8Uj(~;XLqO5+1uNG;Rl`VPUi*qkEgWlk>5J~8-C>0gF3%A=2Ns`$kBN~-5=KK}L^!v(_`vf$-+Au!|JkYT|F?vts2&#pmiT|*?*?`M-}U#`{{IxD zP~OrIyAD9+t4AzV8s)p51CR)*yRft4@0o5Qhp2l+lS5-Nv?C=BsnT-X1ve7mHA;^P z*S04@Q7vo_qXS9g*tBN@!L=smTG>OxVFAZHCn;k+!Du+{!n>;vLiZ#polwS< zThRJhk`Q|+sfhX*3LdF01is@idW#&DGE*2c(zD)Ovr4W}-V#=6)HFts7K}S)=qS~Z z_{`rB%2J6JG)BwqkW`P1>{Oxbf-8l{c84hSS;(loezRnv$$%((A{iQ2x?e(=DlKCA zB?IE@sXIFk2cUG4_Nlzr&uyq{`dz4w{~F`O`eFNWge*a+Je@r7Rj>^IJNw%;{NLN# z-C5)RQ_y76f(WlDM{rAFnr8sSh1T7j1%k;05=ptf0{4}2!OOCQ4g}1eE77JhARm#|ciQ4x6uF-ze`!x%4G6eLp@j3FrS0k9D zOhe9BW!Spcp1~F9A|0$^K|0GFNdjv-4kq0u8Z%aa)yOSjxSX9h65yCF3gR=9#-I zWEg58vm`VoIvl+x17s>|0Hf$iDwrfbGv}$O(mD*WiqzjC7a(7rAsgHEO3Cs}VyoD% z=CHGrV$Y2{OFUcf6>d_YF;`=0ouYZu7Y-_9-wKw-*svb6i?c=mj1xURrm_nYxVy(Z z1Lx9+Fn`5#ON}ePV`efmp&VuNhOcsprSq$fsV5apBYLGORcV`xL(4j=BNHLZ29oJK zTS-=4D+!y{=e(l&Ruz|>kga6hliGMx)(?upSF?Fks$GK2Xx?BSlBs$}4 z+yyODEZY~qZC>2b*}qOM-=CfJE>Hj2|Hu2wU-~EKHKDem{YGY`t}128=ihOBj#u}4 zo2;>t(Kf8W&^3;`wq&=G#=XOS|Kr*D@i(D$URhj8^W(#d!@nK&PntBZ8rHNhX%(o> z9*Q_7=56zDaN7gQ+a_fDPlh<5w{@yzNe+p{M|Fd9oN!Wk?rIKABUZ(?; z9JPsrM0-FK4O=ADBS&dT`S5ruFuT(#;fUe!Olvj7EiSw2ym?QF|G9Vbk4KCAKZ`sc z4gkyie|Km1{{7GT`=2MFIsR{t{{PGSt7-MBDRrJsXBg6y0F9Fz5sC~d4^6X=jiv$9 zyc8;_Bv0kf8CJ-*sx^rfSM}V7y8_kye@;>ML31p-|J@Gm*Z+gH|33-6{BD})IF8AP zVEd=<14p5T7CMf-D7zdG&QWe|!NdWG)$qXG2wdY5G{S=&-^mIw$n}8>8?hRKTQprV zzxln*`6 za~)^X0r)(k3~fo{M~H+45PAh_1nv3WSG~sg5%dUo4sey}jzpX=)EIr|PWuNE$+i6( znaZmuiXkTU%O`*<>HtK7qqFtBId%(-Sx$d`c6KoNeJGVM8F9tM?$@}aW z3?chQtW^P+48o)5c85P5t!jY}nPXY}*V(PdfBQja{r%^YPznEY)UWt;@8dEUaIE1# zYXrgezUOp#504SCZs{jB1 diff --git a/release/deployment/helm-chart/umbrella/charts/coze-loop-nginx-1.0.0.tgz b/release/deployment/helm-chart/umbrella/charts/coze-loop-nginx-1.0.0.tgz deleted file mode 100644 index 72bd0b6eb5f09c7204e7d599f7574eab5bf7ba67..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3190 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 diff --git a/release/deployment/helm-chart/umbrella/charts/coze-loop-redis-1.0.0.tgz b/release/deployment/helm-chart/umbrella/charts/coze-loop-redis-1.0.0.tgz deleted file mode 100644 index 511b0c70c4d14805ad256e6c07ee2c1603186d02..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1910 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 E0IMY8=l}o! diff --git a/release/deployment/helm-chart/umbrella/charts/coze-loop-rmq-namesrv-1.0.0.tgz b/release/deployment/helm-chart/umbrella/charts/coze-loop-rmq-namesrv-1.0.0.tgz deleted file mode 100644 index 9fd071e217209c6ada3fb26f12319813ef0488ee..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1792 zcmV+b2mkmViwG0|00000|0w_~VMtOiV@ORlOnEsqVl!4SWK%V1T2nbTPgYhoO;>Dc zVQyr3R8em|NM&qo0PI;`bK5o&_cK1lmT_9UccLg+vQu{47pMQ`n#Nam`f|DPz~oB8 z83bSeQmZKb?l%BQiKJ-Bu`~AFMB7eef{R^XvA@OcGLi4G!=+Rmo!xW<&Cuvs_iRG7 z4d*oDd!K-!D2k2;1OFREQS&$I_m1{@!)P!(8Vrt)`+HGucr-lPgXmKz-$qkososko zt*g1Y{}ZB${ejvrDPoxQ2~}$O$f-qRNs1=XOj$p6Cf}p;7Wgf@`ITmPp=a#46Qyz>|9|CR4L99>ZFlbsi_x6VMLzW6rUxv<9|l^6wRj!0Ne0?G8{JXf7~DJ z@c$HKP|sL`F#*T{dd8>5qW<}u04S+#4BxyuId-q99-}>94H1^nv7f1N%#79Z7=lD* zN*e4WqH~4pKTM3nM29oU6EtBWv%s?}X_%FM0#!7bpc~G`L7-)FjW)XpywY(DK^}?R zvzl^#E;&o)G5kFGRoZin28AtNU0|Zo8o!Rxuf5og@oxe`QdC^dGZZ#oxerHYaw=>L zJpzzYOW(N1b806s1YKjL_Up5#GbViK`ccya&rvg(USJ|cYGN1?!r2T38sj88x3ZO& z08CiaGs>5Pubfbpp`5N5dydmgrZ$y-iXSNBQ;ol~408o9AekB~Gxk1@p!rk0G#&w{ zoQ8j@nx*CZ+wpHPQ{L#^%L#IY+Jsg;I23Hbe{XQoZ{YvrWO%&8|5MOn(Sa04OrV3} z@@@{DCj`*Bz4cDCSb)+@*bxLTO#oq@AG!npZf}W`fg<(Xq$)56-6mNjF5!TQgiq7f zRfLBdwRqPLM^nx>DC+wEW4HQ)@Q?g@%h40&^Gnpg2Pc?LxrLIi&TzOkUPiOV3;%Cp z%+m43y(ChM*f^tVqtTXJkFwj9l-5{HRj8<)wCZwJTe3Y$849cCN-|;Z*7nkLD{N*` zRoGnY7IhP(+)k1SCf6JFRrx+r;d3MR)6ll~zjDZjCxhGazoX$vJ^uHj{_!sVdlIVE ze?4-|MCz(Mcj#}ZA{kohG9s5tYfSakb zST190S=w&&jgwZgXOd4{?YXueXT{|p0A|Y0Uo#!U0&drsm%+I*BPp+#xH5R}J7y`v zQYKKh8~i?}SUJD?oMutcHsid~jHsA-b!hp^`b;Ht)j{$#FL#o+S1Q7a{!F;)zSPC# zC*&IzYf@W}%Hv?w-)MJ_S`(zMaPzUQOTRmzZpw9`f~Ic;pT}VJ6l>m+Wz+?we?ic_ zVxsGA_J3Cxs2&^lwyJQgh<#DPTc@ZFv}=^ zjhxQgU|X&(thSVz##48qemT9-e`-o-cB0xu)Onf`Mn$`7qR~twPw&`8OLJ?NnLQV6 z%m2#w^O#Qo+v>mJAX@ML?Y{p#3ANUL7x|$-EbptQRrgJ)%5*CK2+?){&Q+20RBq7n zD)N4ddWO0PNb0V8RMl?K>NkzW;_f@QB`v+@#-96pw^2L(?ZLbB_WY3L}(zaw_J92-Io2*95c#?dFb-$E*VOkpE16X_$4`I}BLJxsNDjX&Tq4+C{PyLi*dzg-G`Cq@k9{&fs{O?Jq693Dn&qnKz zFAz`DjEMl=`A}h{V#zPe*y6b(fXjsPi8MC;=GDn@G5#HNQ=E0hlyiT*ECUw)#Vkam ih(!LWM@HE&u?J*@{R2 diff --git a/release/deployment/helm-chart/umbrella/examples/mini.values.yaml b/release/deployment/helm-chart/umbrella/examples/mini.values.yaml deleted file mode 100644 index 3e77b4b9f..000000000 --- a/release/deployment/helm-chart/umbrella/examples/mini.values.yaml +++ /dev/null @@ -1,37 +0,0 @@ -custom: &custom - image: - registry: "compose-cn-beijing.cr.volces.com" - pullSecrets: "coze-loop-image-secret" - redis: - disabled: true - mysql: - disabled: true - clickhouse: - disabled: true - oss: - disabled: true - rmq: - disabled: true - -coze-loop-app: - custom: *custom -coze-loop-nginx: - custom: *custom - service: - type: ClusterIP # minikube ClusterIP就行 - ingress: - enabled: true - host: cozeloop.mini.local - className: nginx -coze-loop-redis: - custom: *custom -coze-loop-mysql: - custom: *custom -coze-loop-clickhouse: - custom: *custom -coze-loop-minio: - custom: *custom -coze-loop-rmq-namesrv: - custom: *custom -coze-loop-rmq-broker: - custom: *custom \ No newline at end of file diff --git a/release/deployment/helm-chart/umbrella/examples/minikube/alone.values.yaml b/release/deployment/helm-chart/umbrella/examples/minikube/alone.values.yaml new file mode 100644 index 000000000..739902707 --- /dev/null +++ b/release/deployment/helm-chart/umbrella/examples/minikube/alone.values.yaml @@ -0,0 +1,60 @@ +ingress: + host: open.coze-loop.minikube + type: nginx + className: nginx + +custom: &custom + image: + registry: "docker.io" + redis: + disabled: false + domain: "***" + port: "***" + password: "***" + mysql: + disabled: false + domain: "***" + port: "***" + user: "***" + password: "***" + database: "***" + clickhouse: + disabled: false + domain: "***" + port: "***" + user: "***" + password: "***" + database: "***" + oss: + disabled: false + protocol: "***" + domain: "***" + port: "***" + region: "***" + user: "***" + password: "***" + bucket: "***" + rmq: + disabled: false + namesrv: + domain: "***" + port: "***" + user: "***" + password: "***" + +coze-loop-app: + custom: *custom +coze-loop-nginx: + custom: *custom +coze-loop-redis: + custom: *custom +coze-loop-mysql: + custom: *custom +coze-loop-clickhouse: + custom: *custom +coze-loop-minio: + custom: *custom +coze-loop-rmq-namesrv: + custom: *custom +coze-loop-rmq-broker: + custom: *custom \ No newline at end of file diff --git a/release/deployment/helm-chart/umbrella/examples/default.values.yaml b/release/deployment/helm-chart/umbrella/examples/minikube/bundle.values.yaml similarity index 87% rename from release/deployment/helm-chart/umbrella/examples/default.values.yaml rename to release/deployment/helm-chart/umbrella/examples/minikube/bundle.values.yaml index 42f5ad8ef..b1d11ff79 100644 --- a/release/deployment/helm-chart/umbrella/examples/default.values.yaml +++ b/release/deployment/helm-chart/umbrella/examples/minikube/bundle.values.yaml @@ -1,3 +1,8 @@ +ingress: + host: open.coze-loop.minikube + type: nginx + className: nginx + custom: &custom image: registry: "compose-cn-beijing.cr.volces.com" @@ -17,10 +22,6 @@ coze-loop-app: custom: *custom coze-loop-nginx: custom: *custom - ingress: - enabled: true - host: cozeloop.mini.local - className: nginx coze-loop-redis: custom: *custom coze-loop-mysql: diff --git a/release/deployment/helm-chart/umbrella/examples/minikube/mixed.values.yaml b/release/deployment/helm-chart/umbrella/examples/minikube/mixed.values.yaml new file mode 100644 index 000000000..779e49fc9 --- /dev/null +++ b/release/deployment/helm-chart/umbrella/examples/minikube/mixed.values.yaml @@ -0,0 +1,40 @@ +ingress: + host: open.coze-loop.minikube + type: vke + className: cozeloop-alb + instanceName: cozeloop-alb + +custom: &custom + image: + registry: "docker.io" + mysql: + disabled: false + domain: "***" + port: "***" + user: "***" + password: "***" + database: "***" + clickhouse: + disabled: false + domain: "***" + port: "***" + user: "***" + password: "***" + database: "***" + +coze-loop-app: + custom: *custom +coze-loop-nginx: + custom: *custom +coze-loop-redis: + custom: *custom +coze-loop-mysql: + custom: *custom +coze-loop-clickhouse: + custom: *custom +coze-loop-minio: + custom: *custom +coze-loop-rmq-namesrv: + custom: *custom +coze-loop-rmq-broker: + custom: *custom \ No newline at end of file diff --git a/release/deployment/helm-chart/charts/app/bootstrap/model_config.yaml b/release/deployment/helm-chart/umbrella/model_config.yaml similarity index 100% rename from release/deployment/helm-chart/charts/app/bootstrap/model_config.yaml rename to release/deployment/helm-chart/umbrella/model_config.yaml diff --git a/release/deployment/helm-chart/charts/nginx/templates/ingress.yaml b/release/deployment/helm-chart/umbrella/templates/ingress.yaml similarity index 67% rename from release/deployment/helm-chart/charts/nginx/templates/ingress.yaml rename to release/deployment/helm-chart/umbrella/templates/ingress.yaml index 41a9d08d9..1a450ad0a 100644 --- a/release/deployment/helm-chart/charts/nginx/templates/ingress.yaml +++ b/release/deployment/helm-chart/umbrella/templates/ingress.yaml @@ -1,4 +1,3 @@ -{{- if .Values.ingress.enabled }} apiVersion: networking.k8s.io/v1 kind: Ingress metadata: @@ -9,9 +8,6 @@ metadata: nginx.ingress.kubernetes.io/proxy-body-size: "1024m" nginx.ingress.kubernetes.io/ssl-redirect: "false" kubernetes.io/ingress.class: {{ .Values.ingress.className }} - {{- if ne .Values.ingress.className "nginx" }} - ingress.vke.volcengine.com/alb-instance-name: {{ .Values.ingress.className }} - {{- end }} spec: ingressClassName: {{ .Values.ingress.className }} rules: @@ -22,7 +18,6 @@ spec: pathType: Prefix backend: service: - name: {{ include "application.name" . }} + name: {{ printf "%s-nginx" (include "application.name" .) }} port: - number: {{ .Values.service.port }} -{{- end }} \ No newline at end of file + number: 8082 \ No newline at end of file diff --git a/release/deployment/helm-chart/umbrella/templates/model-configmap.yaml b/release/deployment/helm-chart/umbrella/templates/model-configmap.yaml new file mode 100644 index 000000000..2b5ed69e8 --- /dev/null +++ b/release/deployment/helm-chart/umbrella/templates/model-configmap.yaml @@ -0,0 +1,7 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: {{ printf "%s-model-configmap" (include "application.name" .) }} +data: + model_config.yaml: |- +{{ .Files.Get "model_config.yaml" | nindent 4 }} \ No newline at end of file diff --git a/release/deployment/helm-chart/umbrella/values.yaml b/release/deployment/helm-chart/umbrella/values.yaml index 97825915c..b1d11ff79 100644 --- a/release/deployment/helm-chart/umbrella/values.yaml +++ b/release/deployment/helm-chart/umbrella/values.yaml @@ -1,3 +1,8 @@ +ingress: + host: open.coze-loop.minikube + type: nginx + className: nginx + custom: &custom image: registry: "compose-cn-beijing.cr.volces.com"