项目部署常见问题

news/2025/2/5 7:01:06/

1、前后端分离

需要在配置文件中添加如下代码:然后把前端代码放置到dist 目录下即可

server.viewUrl :  /u01/isi/39/system/web/dist/

2、项目和依赖包分离

2.1  修改pom文件中打包配置、此时install后lib包和项目分离

    <build><finalName>opera_analysis</finalName><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.8.1</version><configuration><source>1.8</source><target>1.8</target><encoding>UTF-8</encoding></configuration></plugin><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version>1.5.6.RELEASE</version><configuration><mainClass>com.wengegroup.opera_analysis.OperationalAnalysisApplication</mainClass></configuration><executions><execution><id>repackage</id><goals><goal>repackage</goal></goals></execution></executions></plugin><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration><layout>ZIP</layout><!-- 注释后和依赖包一起打包 取消注释则不打包依赖--><includes><include><groupId>nothing</groupId><artifactId>nothing</artifactId></include></includes></configuration></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-dependency-plugin</artifactId><executions><execution><id>copy-lib</id><phase>package</phase><goals><goal>copy-dependencies</goal></goals><configuration><outputDirectory>target/lib</outputDirectory><excludeTransitive>false</excludeTransitive><stripVersion>false</stripVersion><includeScope>runtime</includeScope></configuration></execution></executions></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-surefire-plugin</artifactId><configuration><testFailureIgnore>true</testFailureIgnore></configuration></plugin></plugins><resources><resource><directory>src/main/resources</directory><includes><include>**/*.xml</include><include>**/*.properties</include><include>**/*.lua</include><include>public/**</include><include>template/**</include></includes></resource><resource><directory>src/main/java</directory><includes><include>**/*.properties</include><include>**/*.xml</include><include>**/*.lua</include></includes></resource></resources></build>

2.2 修改启动脚本-增加-Dloader.path=lib


nohup  java -XX:+UseG1GC -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintGCDateStamps -XX:+PrintHeapAtGC -Xloggc:./gclog/gc.log  -Xms3g -Xmx3g -jar -Dloader.path=lib -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5219 opera-system.jar > default.log 2>&1 &
~    

3、配置文件外置

java -jar  启动的时候会优先读取config目录下的配置文、可以把配置文件外置到config目录下、可以通过spring.profiles.active:dev 读取特定文件

4、nginx配置

4.1 路由到特定服务、在配置文件中加如下代码

    location /sp {proxy_pass http://172.16.102.33:18088;proxy_set_header X-Real-IP $remote_addr;proxy_set_header Host $host;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection "upgrade";proxy_http_version 1.1;}

4.2 路由特定web 服务

  location /siling_gzxd_face/ {alias /u01/isi/gzdx_face/;}

5、涉及的到常见linux命令

查看端口号:  lsof -i: 18090 

[isi@meixuan-33 dqgz-system]$ lsof -i:18090
COMMAND   PID USER   FD   TYPE   DEVICE SIZE/OFF NODE NAME
java    20633  isi  285u  IPv6 83827872      0t0  TCP *:18090 (LISTEN)
 

对 jar 解压:jar -xvf dqgz-system.jar 

springboot 项目jar包解压后、修改配置文件后、在不依赖开发工具的情况下、重新压缩jar包、命令是:jar -cvfM0 xxx.jar .


http://www.ppmy.cn/news/48577.html

相关文章

云原生周刊:Kubernetes v1.27 发布 | 2023.4.17

开源项目推荐 Palaemon Palaemon 是一个开源开发工具&#xff0c;用于监控 Kubernetes 集群的健康状况和资源指标并分析内存不足 (OOMKill) 错误。 Gitkube Gitkube 是一种使用 git push 将 Docker 镜像构建和部署到 Kubernetes 上的工具。 经过简单的初始设置后&#xff…

FFMPEG: [ API ] >打开/关闭一个输入文件

它们是成对出现的. ffmpeg 把输入文件--转换成--->AVFormatContext实例 ◆ avformat_open_input() int avformat_open_input(AVFormatContext ** ps,const char * url,ff_const59 AVInputFormat * fmt,AVDictionary ** options ) Open an input stream and read the header…

MiniGPT4,开源了

简介 MiniGPT-4 旨在将来自预训练视觉编码器的视觉信息与先进的大型语言模型 (LLM) 对齐。 具体来说&#xff0c;在文本方面&#xff0c;作者利用 Vicuna 作为语言解码器&#xff0c;在视觉感知方面&#xff0c;使用了与BLIP-2相同的视觉编码器&#xff0c;并且语言和视觉模型…

【密码学复习】期中复习

对称保密体制的定义 对称加密体制的基本思想是使用一个秘密密钥来加密数据&#xff0c;并使用同样的密钥来解密数据。这个密钥必须保密&#xff0c;因为如果被攻击者获取到&#xff0c;他们就可以轻松地解密加密的数据。因此&#xff0c;对称加密通常需要对密钥进行安全分发和…

智能营销服务性能提升2倍关键秘诀?就是亚马逊云科技

随着数字化进程加快和B2B商业市场竞争的白热化&#xff0c;通过挖掘数据“黄金”提升投资回报比与市场竞争力的智能营销&#xff0c;正成为B2B营销的热门风口。 但企业在获得更精准、更智能营销服务的同时&#xff0c;也不得不面临来自海量数据的搜寻以及数据实时更新等方面的…

Unity-ML-Agents-训练生成的results文件解读-PushBlock

前言 训练结果文件路径&#xff1a;E:\ml-agents-release_19\results\push_block_test_02&#xff08;具体路径以自己电脑为准&#xff09; ML-Agents安装和PushBlock训练过程请见&#xff1a;&#xff08;注意&#xff1a;push_block_test_02没有全部训练完毕&#xff09; …

算法记录 | Day37 贪心算法

738.单调递增的数字 思路&#xff1a; 1.一旦出现strNum[i - 1] > strNum[i]的情况&#xff08;非单调递增&#xff09;&#xff0c;首先想让strNum[i - 1]–&#xff0c;然后strNum[i]给为9&#xff0c;这样这个整数就是89&#xff0c;即小于98的最大的单调递增整数。 2…

10分钟了解人工智能(最通俗的语言)

最通俗的语言&#xff1a;15分钟了解人工智能&#xff1b;唯一优点&#xff0c;受众完全听懂 无人驾驶、智能家居、远程医疗……如今&#xff0c;人工智能(AI)技术已被广泛应用于金融、交通、医疗、安防、教育等领域&#xff0c;成为经济增长新动能 一 什么是人工智能 人工智能…