若依前后端分离项目部署实践

超级感谢良心up主codesheep,此文算是学习实践后的整理
感谢开源项目RuoYi-Vue

一、环境准备

系统:centos7(可以买ECS或本地安装虚拟机)
安装:git、jdk、maven、npm、mysql、redis、nginx
具体安装方式详见codesheep出品的pdf文档点击下载提取码:gogo,当然,有些也可以用docker的方式安装,此处不赘述。
文档中没有提到安装包的获取方式,部分整理如下:
wget http://download.redis.io/releases/redis-5.0.7.tar.gz
wget https://nodejs.org/dist/v12.18.1/node-v12.18.1-linux-x64.tar.xz
wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" https://download.oracle.com/otn-pub/java/jdk/8u311-b11/4d5417147a92418ea8b615e228bb6935/jdk-8u311-linux-x64.tar.gz
wget http://nginx.org/download/nginx-1.17.10.tar.gz
wget --no-check-certificate https://dlcdn.apache.org/maven/maven-3/3.8.3/binaries/apache-maven-3.8.3-bin.tar.gz

注:以下命令是默认在此步骤需要安装的都已正常安装并成功启动的前提下执行,安装路径默认与文档一致,如实际安装路径与文档不一致,请根据自己情况灵活变通。

二、部署流程

1.clone若依前后端分离项目
git clone https://gitee.com/y_project/RuoYi-Vue.git
2.安装前后端依赖
#后端
mvn install
#前端
cd ruoyi-ui/
npm install  --registry=https://registry.npm.taobao.org
3.修改配置

修改ruoyi-admin/src/main/resources/application-druid.yml内的mysql的账号密码和ip端口
修改ruoyi-admin/src/main/resources/application.yml内的redis的ip端口和密码
和安装配置的一致即可

4.打包
#后端
mvn package
#前端
cd ruoyi-ui/
npm run build:prod
5.启动
#后端
cd ruoyi-admin/target
nohup java -jar ruoyi-admin.jar &
#前端启动方式一(调试时用,正式部署不推荐)
cd ruoyi-ui/
npm run dev
#前端启动方式二(使用步骤4打包生成的dist目录配置nginx,网页访问速度会有质的变化)
vim /usr/local/nginx/conf/nginx.conf
----------------
#第一行放开,改成如下
user root;
#其他位置修改如下
server {
        listen       80;#80为http默认端口,可以直接访问ip直达项目
        server_name  ?.?.?.?;#?处填写实际的ip地址或域名(ECS的话填公网ip)
        location / {
            root   /?/RuoYi-Vue/ruoyi-ui/dist;#?处填写实际的项目打包路径
            index  index.html;#在root对应目录下找index对应文件
            try_files $uri $uri/ /index.html;#重要,不配置此项,直接访问页面路径会让nginx误认为去dist目录找静态资源,而非去找打包好的页面路径
        }
        location  /prod-api/  {#配置后端路由,prod-api是代码定的
            proxy_set_header Host $proxy_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;#固定写法
            proxy_pass  http://?.?.?.?:8080/;#?处填写后台代理地址,8080为后端代码指定的端口
        }
-----------------
#检查nginx语法问题,若提示successful,则进行下一步,否则排查一下具体问题
/usr/local/nginx/sbin/nginx -t
#重置nginx配置,使其生效
/usr/local/nginx/sbin/nginx -s reload
6.访问项目

如使用ECS部署,请确保安全组进出端口配置80,8080都已开启并使用公网ip访问
直接在浏览器输入nginx配置的ip或域名,大功告成!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,204评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,091评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,548评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,657评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,689评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,554评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,302评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,216评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,661评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,851评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,977评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,697评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,306评论 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,898评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,019评论 1 270
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,138评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,927评论 2 355

推荐阅读更多精彩内容