(一)优雅的停止服务

参考:
https://www.yuque.com/docs/share/24f1c053-af0f-4b6b-9ac9-e0c09386d1b0?#




(二)SpringBoot1.5部署到tomcat7


运维部署相关 - 图1

(三)将SpringBoot项目打成war包

原因:项目部署,需要变成war包,SpringBoot是内嵌tomcat服务器,所以每次重新启动都是用的新的Tomcat服务器,出现的问题:上传到项目的文件,如果是保存在项目中的,那么重启过后文件就会丢失。比如我们上传了一个头像,重启项目后,这个头像就没了。而如果将文件保存在本地磁盘中的话,html中标签没办法获取。因此,我们才需要将SpringBoot项目打成war包,放到Tomcat中去运行。

修改方法
在pom.xml文件中添加下面的依赖:


<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
同时,将pom.xml文件首部的jar改成war

com.star
yiyong
0.0.1-SNAPSHOT
war


最后,将启动类从

@SpringBootApplication
public class YiyongApplication {
public static void main(String[] args) {
SpringApplication.run(YiyongApplication.class, args);
}}

修改为

@SpringBootApplication
public class YiyongApplication extends SpringBootServletInitializer{
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
return builder.sources(YiyongApplication.class);
}


public static void main(String[] args) {
SpringApplication.run(YiyongApplication.class, args);
}}



注意:该类继承了SpringBootServletInitializer并且重写了configure方法,这是关键所在。

打包部署
在IDEA右侧Maven栏双击package等待Build Success即可。

然后把target目录下的war包放到tomcat的webapps目录下,启动tomcat,即可自动解压部署。
最后在浏览器中输入

http://localhost:[端口号]/[打包项目名]/
发布成功

如果不行就看这里
http://note.youdao.com/noteshare?id=4ecffaa94806dd2561ecd7591046ab77


更改打成war包的包名
在 Maven 的pom.xml 的 build 标签里面, finalName 里面的值就是你打成war包的名字


technicianApplet

参考:
https://blog.csdn.net/qq_34638225/article/details/81261392



(四)jar方式部署项目


基本部署

先将项目打成jar包,首先先pom.xml 的 packaging标签改成 jar,

nohup java -jar guns.jar >guns.log 2>&1 &

解读:
java -jar jar包名字.jar >日子名字.log 2>&1 &

然后输入命令: jobs -l 查看进程:

运维部署相关 - 图2

running 就是启动状态

然后 访问项目 IP加端口 名字 就可以访问项目了./参考下面:

http://120.79.13.252:8080/login


以下内容参考链接:
http://note.youdao.com/noteshare?id=819e9c86c7c08f6560e09e1ef565ebe2&sub=wcp1564109563149849

指定日志输出位置

java -jar projecty.jar > error.log # 指定日志输出格式

这样的话日志就输出到jar同路径下的error.log文件里面了, 此时黑窗口不会输出日志

如果想指定端口的话

下面命令就是指定9999端口

java -jar sentinel-dashboard-1.6.3.jar —server.port=9999


关闭项目

输入命令: jobs -l 查看进程:

运维部署相关 - 图3

直接 kill -9 加进程号 强杀即可
再 jobs -l 查看一下 估计就没那个进程了.

查看tomcat日志


因为启动命令是用的




后面的 guns.log 意思是在平级的目录下创建一个 guns.log 文件 来记录日志, 用可视化软件打开
运维部署相关 - 图4

此时可以查看tomcat的输入日志
运维部署相关 - 图5

(五)SpringBoot和Vue进行一起部署


1. 先让前端将Vue项目里面的Tomcat地址都改好之后,让前端去打包,打好之后复制到StringBoot项目下的resources文件夹的static文件夹下
然后打开pom.xml添加plugin

|

<plugin> <artifactId>maven-resources-plugin</artifactId> <executions> <execution> <id>copy Vue.js frontend content</id> <phase>generate-resources</phase> <goals> <goal>copy-resources</goal> </goals> <configuration> <outputDirectory>src/main/resources/static</outputDirectory> <overwrite>true</overwrite> <resources> <resource>
<directory>${basedir}/</directory> <includes> <include>static/</include> <include>index.html</include> </includes> </resource> </resources> </configuration> </execution> </executions> </plugin> | | —- |



然后启动项目访问:
http://localhost:8080/index.html 就能访问到vue页面了.



参考:
https://www.jb51.net/article/147909.htm

(六)Maven多环境部署配置


打包的时候可以直接:
mvn package -P local 指定打包local环境的


https://www.yuque.com/docs/share/5fb30179-c3a8-4ab3-a841-88baf09fabf5?#

SpringBoot项目启动
运维部署相关 - 图6

这里设置环境然后启动,, 这个IDEA启动SpringBoot项目,