简单Springboot项目打包部署到Linux上

一、检查配置pom.xml文件:

<build>
	<plugins>
		<plugin>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-maven-plugin</artifactId>
		</plugin>
	</plugins>
</build>

二、运行打包:

打成jar包:

项目上右键 -> Run as -> Maven Install

idea 导出springboot项目的接口_jar


运行成功之后,在左侧项目 target里面查看包文件

idea 导出springboot项目的接口_日志文件_02


三、在Linux上部署Springboot项目

1、在 / 目录下创建一个文件目录用于存放项目:(例子起名为:firstDemo)

mkdir 文件夹名称     -- 创建目录命令

idea 导出springboot项目的接口_linux_03


2、进入firstDemo目录,把打好的jar包放进去

这里我使用的连接Linux服务器的工具是 MobaXterm,可以直接在可视化界面上传文件,比较方便

idea 导出springboot项目的接口_spring_04


idea 导出springboot项目的接口_java_05

idea 导出springboot项目的接口_spring_06


上传成功

idea 导出springboot项目的接口_java_07


创建nohup.out日志文件,用于输出项目启动的日志输出

touch 文件名    -- 创建日志文件

idea 导出springboot项目的接口_jar_08


运行 jar 文件

nohup java -jar xxx.jar &                      -- 运行jar命令
nohup java -jar xxx.jar --server.port=8080 &   --指定端口运行

idea 导出springboot项目的接口_jar_09


查看nohup.out文件

tail -fn 10000 nohup.out     -- 查看文件(fn后数字表示查看行数)

启动成功如图

idea 导出springboot项目的接口_java_10


注意输入之后结尾处于不可输入状态,因为是实时更新日志文件的,所以需要用 ctrl+c 退出

接下来在防火墙开放端口号,否则无法远程访问

vi /etc/sysconfig/iptables    -- 修改防火墙配置

添加下面这条配置,并保存重启防火墙
-A INPUT -p tcp -m state --state NEW -m tcp --dport 8080 -j ACCEPT

vi命令使用方法参考:

Linux中vi的使用Linux——vi命令详解

这里发现我的服务器上/etc/sysconfig/iptables这个目录文件并不存在,于是上网搜,CentOS7开始,默认是没有iptables的,而是使用firewall防火墙。本文将屏蔽掉firewall,使用iptables
Centos7版本解决方法:感谢下面博客内容予以启发解答:

Linux系统中无iptables文件

# service iptables status    #查看iptables状态
# service iptables restart   #iptables服务重启
# service iptables stop      #iptables服务禁用

四、设置结束,访问项目测试一下

idea 导出springboot项目的接口_jar_11


最后:

特别鸣谢以下博客给我指导参考,帮我愉快解决问题

Linux部署springBoot项目jar简单示例Linux服务器部署JavaWeb项目完整教程