🍟若依前后端分离项目,部署到Linux服务器
Gitee地址:https://gitee.com/y_project/RuoYi-Vue.git
一、项目本地启动(Windows)
maven:3.6.3
jdk:1.8
mysql:8.0.18
1.1、后端项目配置,启动
1、创建数据库
1 2 | 1、创建数据库:ry-vue 2、执行两个SQL文件:sql/quartz.sql、sql/ry_20230223.sql |
2、修改配置文件:ruoyi-admin/application.yml
- 修改mysql连接信息
- 修改redis连接信息
- 修改项目启动端口号,这里我修改为了8058
3、启动后端项目
浏览器访问:http://localhost:8058/
1.2、前端项目配置,启动
NodeJs版本:v16.18.1
NodeJs历史版本下载地址:https://nodejs.org/dist/
NodeJs安装:https://www.cnblogs.com/zhangzhixi/p/14305955.html#_label1_0
1、修改配置
修改ruoyi-ui/vue.config.js
1 2 3 4 5 | // 修改前端项目端口 const port = process.env.port || process.env.npm_config_port || 8060 // 端口 // 后端项目ip和端口 target: `http: //localhost:8058`, |
2、构建启动
1 2 3 4 5 6 | # 进入项目目录 cd ruoyi-ui # 安装依赖(建议不要直接使用 cnpm 安装依赖,会有各种诡异的 bug。可以通过如下操作解决 npm 下载速度慢的问题) npm install --registry=https: //registry.npmmirror.com --strict-ssl=false # 启动服务 npm run dev |
3、访问
浏览器访问:http://localhost:8060/
默认用户名密码:admin admin123
4、通过idea启动前端项目
二、Linux下项目部署
Centos版本:Centos7.4
虚拟机IP:192.168.147.128
2.1、后端项目部署(Jar包)
1、使用idea在本地maven打包
2、上传jar包到服务器
3、编写shell脚本执行:start_ruoyi_admin.sh
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | #!/bin/bash # 1、常量 LOG_PATH=/usr/local/project/ruoyi/log. out # 日志输出位置 JAVA_PATH=/usr/local/java/jdk1.8.0_144 # JDK位置 PROJECT_MANAGER_PATH=/usr/local/project/ruoyi/ruoyi-admin/ruoyi-admin.jar # 后端项目位置 SERVER_PORT=8058 # 服务端口 # 记录开始时间 echo -e "\e[34m ==================start【$(date +" %Y-%m-%d %H:%M:%S ")】================== \e[0m" >> $LOG_PATH # 2、启动项目的函数 function start_project { nohup $JAVA_PATH/bin/java -jar -Dserver.port=$SERVER_PORT $PROJECT_MANAGER_PATH >>$LOG_PATH 2>&1 & } # 3、获取进程ID PID=$(pgrep -f $PROJECT_MANAGER_PATH) # 4、判断进程是否存在 if pgrep -f $PROJECT_MANAGER_PATH > /dev/ null then echo "进程存在,关闭项目,然后重启~" >> $LOG_PATH kill "$PID" sleep 5 kill -9 "$PID" > /dev/ null 2>&1 start_project else echo "进程不存在,启动项目" >> $LOG_PATH start_project fi # 记录结束时间 echo -e "\e[34m ==================end【$(date +" %Y-%m-%d %H:%M:%S ")】================== \e[0m" >> $LOG_PATH |
4、启动
2.2、后端项目部署(War包)[根据需要,可选]
2.3、前端项目部署
因为需要将vue程序部署到nginx,这里需要安装下。
1、前端vue发布部署
构建打包成功之后,会在根目录生成 dist 文件夹,里面就是构建打包好的文件,通常是 ***.js 、***.css、index.html 等静态文件
发布到你的 nginx 或者静态服务器即可,其中的 index.html 是后台服务的入口页面。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | 1、上传ruoyi-ui到Linux服务器,进入ruoyi-ui目录下 2、安装依赖: npm install --registry=https: //registry.npmmirror.com --strict-ssl=false 3、第一种:运行(本地),直接通过ip加端口访问 nohup npm run dev >> npm. out 2>&1 & 4、第二种:部署/打包,通过nginx进行发布 npm run build:prod 4.2、nginx发布 server { # 1、vue项目端口 listen 8060; server_name localhost; location / { # 2、打包的文件路径 root /usr/local/project/ruoyi/ruoyi-ui/dist; try_files $uri $uri/ /index.html; index index.html index.htm; } location /prod-api/{ proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; # 3、后端项目访问地址 proxy_pass http: //localhost:8058/; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } 5、关闭前端vue项目: ps -ef|grep mixky-ui|grep -v grep | awk '{print $2}' | xargs kill -9 |
2、浏览器访问:http://192.168.147.128:8060/
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」
2022-06-07 Shell脚本简单示例