微服务本地开发硬件资源有限,所以会将核心微服务组件先部署在服务器上比如:mysql,redis,注册中心Nacos,网关Gateway,认证中心Auth和upms模块以及低代码生成模块。
mysql、redis部署前篇已讲,这里不再赘述。
一、后端jar包准备
直接在IntelliJ上 点击运行 Maven clean package,将以下jar包上传至服务器
二、初始化数据库
远程连接mysql数据库,运行1-999的sql文件。
三、修改hosts文件
四、使用docker的openjdk17 运行核心jar包
docker pull eclipse-temurin:17-jdk
# 运行nacos
docker run -d --name peer-register -v $PWD/peer-register.jar:/app/peer-register.jar --net host eclipse-temurin:17-jdk java -Dfile.encoding=utf-8 -jar /app/peer-register.jar
# 非常重要:登陆注册中心修改其他微服务的配置文件连接数据库信息
# 运行upms
docker run -d --name peer-upms-biz -v $PWD/peer-upms-biz.jar:/app/peer-upms-biz.jar --net host eclipse-temurin:17-jdk java -Dfile.encoding=utf-8 -jar /app/peer-upms-biz.jar
# 运行网关
docker run -d --name peer-gateway -v $PWD/peer-gateway.jar:/app/peer-gateway.jar --net host eclipse-temurin:17-jdk java -Dfile.encoding=utf-8 -jar /app/peer-gateway.jar
# 运行权限管理模块(前端验证滑块等需要的接口
docker run -d --name peer-auth -v $PWD/peer-auth.jar:/app/peer-auth.jar --net host eclipse-temurin:17-jdk java -Dfile.encoding=utf-8 -jar /app/peer-auth.jar
# 运行低代码平台
docker run -d --name peer-codegen -v $PWD/peer-codegen.jar:/app/peer-codegen.jar --net host eclipse-temurin:17-jdk java -Dfile.encoding=utf-8 -jar /app/peer-codegen.jar
五、前后端跨域问题
http://${ip1}:8888/ 是前端运行地址,前端代码路径 /home/xxx/data/code/java/pig-ai/frontend。但是后端运行在${ip2}:9999 。
当前场景:前端 10.168.131.19:8888,后端 10.168.112.229:9999(前端处于开发状态)
前端 Vue 开发环境已经做了代理:
在开发时,可以在 Vue 项目的配置文件(通常是 vue.config.js)中配置 devServer.proxy,使得 Vue 开发服务器的端口8888在接收请求会自动转发到后端服务器${ip2}:99999999。不需要额外的 Nginx 容器。
• 如果使用 Nginx 容器:
你可以启动一个 Nginx 容器,让它同时处理静态资源和 API 代理。由于你目前没有打包成 dist(即前端仍在开发状态),有两种选择:
配置 Vue 开发服务器代理
在 vue.config.js 中加入类似如下配置:
module.exports = {
devServer: {
proxy: {
'/api': {
target: 'http://10.168.112.229:9999',
changeOrigin: true, // 根据需要设置
pathRewrite: { '^/api': '' } // 如果后端不需要 /api 前缀,则重写路径
}
},
port: 8888 // 确保开发服务器运行在 8888 端口
}
};
六、AI模块
1.pigx-register/PigxNacosApplication.java
2.pigx-upms-biz/PigxAdminApplication [注意启动完毕输出路由初始化完毕再去启动其他模块]
3.pigx-auth/PigxAuthApplication
4.pigx-gateway/PigxGatewayApplication
5.pigx-knowledge/PigxKnowledgeApplication
# 如需 Chat2SQL 功能,启动
- pigx-visual/pigx-codegen/PigxCodeGenApplication
# 如需要业务联动智能流程,启动
- pigx-flow/PigxFlowEngineApplication
- pigx-flow/PigxFlowTaskApplication
- nacos查看服务配置:mysql连接是否正确
- 准备jar包:peer-knowledge.jar
- 运行程序
docker run -d --name peer-knowledge -v $PWD/peer-knowledge.jar:/app/peer-knowledge.jar --net host eclipse-temurin:17-jdk java -Dfile.encoding=utf-8 -jar /app/peer-knowledge.jar