Ruoyi-Cloud框架学习-【08 前端、后端服务打包】

news2024/12/30 1:23:53

后端打包部署

在ruoyi项目的bin目录下执行package.bat打包Web工程,生成war/jar包文件。

然后会在各个项目下生成target文件夹、包含war或jar

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

提示

不同模块版本会生成在ruoyi/ruoyi-xxxx模块下target文件夹

部署工程文件

1、jar部署方式

使用命令行执行:java –jar ruoyi-xxxx.jar 或者执行脚本:ruoyi/bin/run-xxxx.bat
这里没有自己新建的business模块jar包的启动脚本,复制system的写一个

@echo off
echo.
echo [信息] 使用Jar命令运行Modules-Business工程。
echo.

cd %~dp0
cd ../ruoyi-modules/ruoyi-business/target

set JAVA_OPTS=-Xms512m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m

java -Dfile.encoding=utf-8 %JAVA_OPTS% -jar ruoyi-modules-business.jar

cd bin
pause

直接用脚本启动以下几个服务
在这里插入图片描述
启动成功
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2、war部署方式

ruoyi/pom.xml中的packaging修改为war,放入tomcat服务器webapps

   <packaging>war</packaging>

提示

不同模块版本在ruoyi/ruoyi-xxxx模块下修改pom.xml

SpringBoot去除内嵌Tomcat(PS:此步骤不重要,因为不排除也能在容器中部署war)

<!-- 排除内置tomcat -->
<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-web</artifactId>
	<exclusions>
		<exclusion>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-tomcat</artifactId>
		</exclusion>
	</exclusions>
</dependency>

前端打包部署

当项目开发完毕,只需要运行一行命令就可以打包你的应用

打包正式环境

npm run build:prod

打包预发布环境

npm run build:stage

在这里插入图片描述

构建打包成功之后,会在根目录生成 dist 文件夹,里面就是构建打包好的文件,通常是 .js 、.css、index.html 等静态文件。

通常情况下 dist 文件夹的静态文件发布到你的 nginx 或者静态服务器即可,其中的 index.html 是后台服务的入口页面。
在这里插入图片描述

outputDir 提示

如果需要自定义构建,比如指定 dist 目录等,则需要通过 config (opens new window)的 outputDir
进行配置。

publicPath 提示

部署时改变页面js 和 css 静态引入路径 ,只需修改 vue.config.js 文件资源路径即可。

publicPath: ‘./’ //请根据自己路径来配置更改 export default new Router({ mode:
‘hash’, // hash模式 })

Nignx配置

下载安装可参考这一篇博客
https://blog.csdn.net/qq_40421671/article/details/128819308

按照若以官网提示对nginx配置进行修改

进入解压后的nginx目录,用若以提供的配置代码覆盖原有的conf/nginx.conf
在这里插入图片描述

若依的配置代码

worker_processes  1;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;

    server {
        listen       80;
        server_name  localhost;
		charset utf-8;

		location / {
            root   /home/ruoyi/projects/ruoyi-ui;
			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;
			proxy_pass http://localhost:8080/;
		}

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}

记得修改原路径为你自己前端打包路径(斜杠注意不要反了)
在这里插入图片描述
双击启动Nginx.exe

在这里插入图片描述
任务管理器可以看到已经开启
在这里插入图片描述

部署成功!

在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/189876.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

docker学习(三):docker镜像分层原理及本地镜像推送到阿里云或私服

文章目录前言docker镜像分层加载原理docker镜像commit操作产生新镜像本地镜像发布到阿里云将本地镜像推送到私有库前言 大家好&#xff0c;这是我学习docker系列的笔记文章&#xff0c;目标是掌握docker,为后续学习K8s做准备。本文记录了docker镜像分层加载的原理&#xff0c;…

DSP_TMS320F28377D_使用定时器实现<获取代码块运算时间>的功能

前言 给大家拜个晚年&#xff0c;此博客是2023年的第一篇博客&#xff0c;希望在2023年我与各位大佬共同进步。以前在STM32上实现过相关的功能&#xff0c;链接如下&#xff1a; STM32_使用定时器实现&#xff1c;获取代码块运算时间&#xff1e;的功能_江湖上都叫我秋博的博…

发表计算机 SCI 论文有多难? - 易智编译EaseEditing

发表SCI论文的对本科生来说点难度&#xff0c;一般论文的水平是这样&#xff1a;普刊&#xff1c;核心&#xff1c;SCI。 不同的专业都可以发SCI&#xff0c;只是影响因子高低不用而已&#xff0c;有的领域分值高&#xff0c;有的偏低。 就是说不同领域SCI期刊&#xff0c;影响…

液晶12864显示图片

液晶12864简介12864是128*64点阵液晶模块的点阵数简称。基本参数1、低电源电压&#xff08;VDD:3.0&#xff5e;5.5V&#xff09;。2、显示分辨率:12864 点。3、内置汉字字库&#xff0c;提供8192 个1616 点阵汉字。4、内置128 个168 点阵字符。5、2MHZ时钟频率。6、显示方式&a…

HCIA-Datacom题库2023最新放送,能答对60%就拿下证书

HCIA的学习是网络工程师这条路的开始。如果你准备好了&#xff0c;就往下看&#xff01;HCIA认证是华为公司认证体系中的初级认证&#xff0c;是一个入门认证&#xff0c;它包含的技术很简单&#xff0c;只是一个单核心的小网络&#xff0c;距离一个合格的网络工程师还有一段距…

电子文件全程管理与信息安全保障的并行之路

这篇文章是笔者2014年发表在《保密科学技术》第6期的一篇文章&#xff0c;时隔8年温习了一遍之后感觉还是有一定的可取之处&#xff0c;时至今日依然没有明显落伍&#xff0c;所以在修改完善其中部分内容之后分享给大家。 原文 Part. 01 引言 从上世纪八九十年代开始&#xff…

Nacos目录挂载并实现持久化

目录挂在docker pull ndocker pull nacos/nacos-server:v2.0.4 acos/nacos-server:v2.0.4 docker run -d --name nacos -e JVM_XMS256m -e JVM_XMX512m -e MODEstandalone --restartalways -p 8848:8848 nacos/nacos-server:1.4.2docker run -d --name nacos -e JVM_XMS256m -e…

作为一个合格的测试工程师如何跟开发有效沟通?

测试人员每天的例行工作之一就是与开发沟通代码改动&#xff0c;并对改动进行功能回归&#xff0c;我们称之为测试范围确认。对于每个测试人员来说&#xff0c;可能都会遇到以下问题&#xff1a; 1、拿到一个代码改动后我首先做什么&#xff1f; 2、跟开发沟通时问些什么&…

【Cocos新手入门】cocos creator操作 canvas绑定脚本及通过代码操作label组件变化的方法

本篇文章主要讲解利用cocos creator操作 canvas绑定脚本及通过代码操作label组件变化的方法 作者&#xff1a;任聪聪 日期&#xff1a;2023年1月31日 本篇文章仅适合cocos 2.4.3引擎版本下进行练习&#xff0c;其他版本可参考只有写法不同。 基本的操作说明 步骤一、通过cocos…

OJ万题详解––木板上的蚂蚁(C++详解)

题目 题目描述 有一块木板&#xff0c;长度为 n 个 单位 。一些蚂蚁在木板上移动&#xff0c;每只蚂蚁都以 每秒一个单位 的速度移动。其中&#xff0c;一部分蚂蚁向 左 移动&#xff0c;其他蚂蚁向 右 移动。 当两只向 不同 方向移动的蚂蚁在某个点相遇时&#xff0c;它们会同…

MongoDB 数据库操作

场景&#xff1a; 已知广告点击数据的记录已经存在&#xff0c;数据统计在mongodb中&#xff0c;现在要统计广告列表pv和uv。 思路&#xff1a; 这个时候就想到mysql的聚合查询group、count、distinct&#xff0c;但是于是就找了好多文档&#xff0c;发现mongodb的语法和mys…

“易”起涨知识|一文告诉你数字化生产的优势

在信息化高速发展的时代&#xff0c;企业工厂的数字化转型已经不是想不想转的问题&#xff0c;而是必须得转的形势。 智慧工厂是现代工厂信息化发展的新阶段。是在数字化工厂的基础上&#xff0c;利用物联网的技术和设备监控技术加强信息管理和服务&#xff1b;清楚掌握产销流…

Dart语法学习-变量

一、 创建Dart File Hello, World void main() {print(Hello world); }Log: Hello world 二、变量 1.Dart 支持类型推断。 var name Voyager I;var year 1977;var antennaDiameter 3.7;var flybyObjects [A1, A2, A3, A4];var image {tags:[saturn],url:www.baidu,com};…

王道操作系统笔记(四)———— 进程同步与互斥

文章目录一、同步与互斥的概念1.1 同步与互斥的基本概念1.2 临界资源与共享资源1.3 独占设备与共享设备二、实现临界区互斥的基本方法2.1 软件实现方法2.1.1 单标志法2.1.2 双标志先检查法2.1.3 双标志后检查法2.1.4 Peterson 算法2.1.5 软件实现方法总结2.2 硬件实现方法2.2.1…

【电子通识】查找硬件学习资料的方法

做为一名硬件工程师&#xff0c;在工作中会经常遇到一些问题&#xff0c;这些问题最开始可能也并不知道是什么原因。对于这些异常现象&#xff0c;我们可能需要深入去了解电路原理或器件特性等方式&#xff0c;从原理上理解并解决。当再次遇到相同或相似的问题时&#xff0c;我…

Python爬虫2--数据解析方法:bs4库的使用和案例

目录标题数据解析1、BeautifulSoup库1.1 BeautifulSoup库入门1.1.1 BeautifulSoup类的基本元素&#xff1a;1.1.2 基于bs4库的HTML内容遍历方法1.1.3 基于bs4库的HTML格式化和编码1.2 信息组织和提取方法1.2.1 信息标记的三种形式&#xff1a;xml,json,yaml1.2.2 三种信息标记形…

360数据恢复如何操作?360安全卫士恢复误删文件的方法(详解)

3 60安全 卫士属于一款杀毒软件&#xff0c;这是很多人都知道的事情。但是你知道吗&#xff1f;3 60安全 卫士还有一个免费功能&#xff0c;就是文件恢复功能。 当文件被误删&#xff0c;电脑回收站又找不到&#xff0c;你可以尝试通过3 60里面的文件恢复功能来进行数据恢复。…

Leetcode:62. 不同路径、63. 不同路径 II(C++)

目录 62. 不同路径 问题描述&#xff1a; 实现代码与解析&#xff1a; 深度优先&#xff08;超时&#xff09;&#xff1a; 原理思路&#xff1a; 动态规划&#xff1a; 原理思路&#xff1a; 数学方法&#xff1a; 原理思路&#xff1a; 63. 不同路径 II 问题描述&…

AcWing蓝桥杯AB组辅导课09、复杂DP

文章目录前言一、复杂DP例题例题1&#xff1a;AcWing 1050. 鸣人的影分身&#xff08;线性dp&#xff09;分析题解&#xff1a;DP例题2&#xff1a;AcWing 1047. 糖果&#xff08;背包问题变形&#xff09;分析题解&#xff1a;DP&#xff08;01背包问题变形&#xff09;例题3&…

静态库与动态库的生成与使用

一、库文件 预编译——>编译——>汇编——>链接&#xff08;使用库&#xff09;——>可执行文件 二、生成库&#xff1a;把大量的已经实现的代码打包起来 生成动态库&#xff1a; 1、将源码遍历汇编生成二进制指令 gcc -fPIC -c child.c -o child.o 2、将所有二进…