跳到主要内容

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";