- 前端:Vue3 + TypeScript + Vite
- 缓存中间件:Redis
- 验证中间件:JWT
- 后台系统: Golang + Gin + Grpc
- 扩容系统: Nodejs16 + Express + TypeScript
- 数据库:Mysql8
- MacOS
- Centos7
- Ali Centos
PS: Windows理论上也支持,但未测试
- NodeJS 14+
- SpringBoot 2+
- Golang
PS:对于NodeJs+TypeScript服务,建议将 tsconfig.json 的 target 设置为 es6 以上,否则会出现兼容性问题
- 多语言服务部署
- 远程配置中心
- 日志监控与查询
- 多节点组管理
- 多服务组管理
- 服务版本控制
- 服务健康检查
- 系统信息统计
- Web化网关配置
- 进入Sgrid目录下,运行 prod.sh 脚本,打包成 Sgrid.tar.gz 压缩文件
- 在 linux 服务器下 /usr/ 目录下创建 app 目录 (mkdir app),将压缩文件移动到服务器中
- 解压 (tar -xvzf ./Sgrid.tar.gz)
- 配置文件修改 /usr/app/sgrid.yml 文件, 配置对应的 host , mysql , redis 等
- 创建目录 /usr/app/server/SgridPackageServer
- 首次运行 /usr/app/sgrid_app,会报错链接不到 grpc, 但是会创建数据库
- 去 mysql 数据库 grid_properties 里面手动添加对应的grpc链接数据
- key : SgridPackageServerHosts value: server.SgridPackageServer@grpc -h 127.0.0.1 -p 14938
- key : SgridLogTraceServerHosts value: server.SgridLogTraceServer@grpc -h 127.0.0.1 -p 15887
- // TODO RBAC 基础数据
- 再次运行 /usr/app/sgrid_app,启动成功
## build client
cd client
chmod +x ./build.sh
cd ..
## build docker-image
sudo docker buildx build --platform linux/amd64 --load -t sgrid-test:latest .
## build macos
docker build -t sgrid-test:latest .
docker tag sgrid-test:latest chelizichen/sgrid-release:version_os
docker push chelizichen/sgrid-release:version_os
# linux
docker run \
--net=host \
--name sgrid-container \
--add-host=host.docker.internal:host-gateway \
sgrid-test:latest
# macos (集中暴露100个端口供开发使用)
sudo docker run \
-it --entrypoint /bin/sh \
--net=host \
-v /Users/leemulus/Desktop/SgridCloud/Sgrid/sgrid.yml:/app/sgrid.yml \
--name sgrid-cloud-server \
--mount type=bind,source=/Users/leemulus/Desktop/SgridCloud/Sgrid/server/SgridPackageServer,target=/app/server/SgridPackageServer \
chelizichen/sgrid-release:0.20.1_x86
# test
docker run \
--net=host \
--name sgrid-container \
sgrid-test:latest
- macos 本地启动时 sgrid.yml 里面的 host要进行对应的修改参考链接
- 添加服务组,服务组的名称,英文名称,方便做管理
- 添加服务,包括服务名称,选择服务组,选择服务类型、执行路径等
- 为服务添加节点
- 选择节点,发布服务
注:
- 选择服务类型时,相当于只是选择服务的 执行命令模版,当然可以使用自定义命令的方式
- 节点组添加完之后可以通过 nginx 配置端口后进行访问
2024-07-29 : 添加 服务组、用户小组、用户之间的对应关系,涉及用户对服务组的查询接口的改造
2024-09-07 : 计划添加 自定义命令行、完善周边扩展库 比如:
- 使用自定义命令行 启动代码,该项措施可以使静态资源的部署的能力得到更进一步的提升
- 使得原本 jar、node、exe 的方式 可以得到进一步的扩展
2024-09-08 :扩展 sgrid-cli 启动静态资源托管服务的方式