JAR部署方案
Version: 3.5+ 版本
服务器建议
建议服务器常规配置:4核+8G内存+50G硬盘。当然配置越高越好,为了节省成本
2核/4GB
也可以跑;
正式环境部署
- 后端服务通过JAR方式运行
- 前端项目build的dist,部署到nginx
一、jeecg-boot项目打JAR包
-
1、修改配置文件
application-prod.yml
修改 数据库连接、缓存redis、上传附件等配置
-
2、切换Maven为生产模式
- 3、通过
jeecg-boot-parent
打包
- 4、拿到
jeecg-system-start-{版本号}.jar
包
二、通过JAR方式启动后台
通过命令启动项目
Window启动命令:
java -jar jeecg-system-start-3.5.0.jar
Linux下后台进程启动命令:
nohup java -jar jeecg-system-start-3.5.0.jar >catalina.out 2>&1 &
关掉项目:
ps -ef|grep java
kill 进程号
三、通过nginx部署Vue3前端
3.1、配置接口地址
配置文件:
.env.production
请把http://localhost:8080/jeecg-boot
的两个地方替换成自己后台访问地址,其他不用改。
#后台接口父地址(必填)
VITE_GLOB_API_URL=/jeecgboot
#后台接口全路径地址(必填)
VITE_GLOB_DOMAIN_URL=http://localhost:8080/jeecg-boot
3.2 nginx配置前端
配置说明:
boot3.jeecg.com
是官方Vue3前端演示地址,请把下面的boot3.jeecg.com
全部换成自己的前端域名/jeecgboot/
下面的proxy_pass
对应的是通过 nginx 配置请求转发到后台接口
upstream boot3.jeecg.com {
server 127.0.0.1:80;
}
server {
listen 80;
server_name boot3.jeecg.com;
#前端打的dist资源存放目录
root /srv/www/project;
location / {
# 用于配合 browserHistory使用
try_files $uri $uri/ /index.html;
}
location /jeecgboot/ {
#后台接口地址(我们部署去掉了/jeecg-boot项目名,如果你有请加上)
proxy_pass http://127.0.0.1:8080/;
proxy_redirect off;
#真实IP获取
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
set $my_proxy_add_x_forwarded_for $proxy_add_x_forwarded_for;
if ($proxy_add_x_forwarded_for ~* "127.0.0.1"){
set $my_proxy_add_x_forwarded_for $remote_addr;
}
proxy_set_header X-Forwarded-For $my_proxy_add_x_forwarded_for;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
3.3 前端dist位置说明
将dist内容,放到服务器的 /srv/www/project
目录下。
/srv/www/project
允许自定义,但需要与nginx里面的配置一致。
3.4 nginx配置完,需要重启nginx
四、访问应用
通过:http://你的域名 访问项目,出现如下页面,使用账户/密码:admin/123456 登录成功即可
五、后台配置独立api域名(nginx映射)
- nginx监听:80端口
- 绑定域名(示例):api3.boot.jeecg.com
upstream api3.boot.jeecg.com {
server 127.0.0.1:8080;
}
server {
listen 80;
server_name api3.boot.jeecg.com;
location / {
root html;
index index.html index.htm;
proxy_pass http://api3.boot.jeecg.com;
#ip remote_addr
proxy_set_header X-Forwarded-Scheme $scheme;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
六、Websocket配置
提醒: 有的版本nginx配置需要加上 Upgrade 和Connection 协议头,不然WebSocket会404
#支持websocket得这么写,不然CentOS上可能失败
# proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";