《Linux篇》02.超详细SpringBoot项目部署教程(附脚本自动部署)(一)

本文涉及的产品
云防火墙,500元 1000GB
日志服务 SLS,月写入数据量 50GB 1个月
简介: 《Linux篇》02.超详细SpringBoot项目部署教程(附脚本自动部署)(一)

1. 软件安装


1.1 软件安装方式

在Linux系统中,安装软件的方式主要有四种,这四种安装方式的特点如下:

image.png

1.2 安装JDK

各种安装包已经在资料中准备好,先需要安装FinallShell进行远程连接,方便文件传输和输入命令。

安装FinallShell请看我的博客:超详细安装FinallShell教程。


JDK具体安装步骤如下:


1). 上传安装包


使用FinalShell自带的上传工具将jdk的二进制发布包上传到Linux


注:先执行cd / 切换到根目录,然后上传jdk压缩包

image.png


由于上述在进行文件上传时,选择的上传目录为根目录 /,上传完毕后,我们执行指令 cd / 切换到根目录下,查看上传的安装包。


image.png


2). 解压安装包


执行如下指令,将上传上来的压缩包进行解压,并通过-C参数指定解压文件存放目录为 /usr/local。


tar -zxvf jdk-8u171-linux-x64.tar.gz -C /usr/local

image.png


3). 配置环境变量


使用vim命令修改/etc/profile文件,在文件末尾加入如下配置


JAVA_HOME=/usr/local/jdk1.8.0_171
PATH=$JAVA_HOME/bin:$PATH

具体操作指令如下:


1). 编辑/etc/profile文件,进入命令模式
  vim /etc/profile
2). 在命令模式中,输入指令 G , 切换到文件最后
  G
3). 在命令模式中输入 i/a/o 进入插入模式,然后切换到文件最后一行
  i
4). 将上述的配置拷贝到文件中
  JAVA_HOME=/usr/local/jdk1.8.0_171
  PATH=$JAVA_HOME/bin:$PATH
5). 从插入模式,切换到指令模式
  ESC
6). 按:进入底行模式,然后输入wq,回车保存
  :wq

4). 重新加载profile文件


为了使更改的配置立即生效,需要重新加载profile文件,执行命令:


source /etc/profile

5). 检查安装是否成功


java -version

image.png

1.3 安装Tomcat

1.3.1 Tomcat安装

Tomcat的安装和上述JDK的安装采用相同的方式,都是使用二进制发布包的形式进行安装,在我们的资料目录下,也已经准备了Tomcat的安装包:


具体安装步骤如下:


1). 上传安装包


使用FinalShell自带的上传工具将Tomcat的二进制发布包上传到Linux(与前面上传JDK安装包步骤一致)。


image.png


2). 解压安装包


将上传上来的安装包解压到指定目录/usr/local下,执行命令为


tar -zxvf apache-tomcat-7.0.57.tar.gz -C /usr/local

3). 启动Tomcat


进入Tomcat的bin目录启动服务。执行命令为:
cd /usr/local/apache-tomcat-7.0.57/
cd bin
sh startup.sh或者./startup.sh


image.png


image.png

1.3.2 Tomcat进程查看

上述我们将Tomcat启动完成之后,并不能知道Tomcat是否正常运行,那么我们验证Tomcat启动是否成功,有多种方式,我们这里主要介绍常见的两种方式:


1). 查看启动日志


Tomcat的启动日志输出在Tomcat的安装目录下的logs目录中,Tomcat的启动及运行日志文件名为 catalina.out,所以我们查看Tomcat启动日志,主要可以通过两条指令,如下:


1). 分页查询Tomcat的日志信息
more /usr/local/apache-tomcat-7.0.57/logs/catalina.out
2). 查询日志文件尾部的50行记录  (注 这个常用)
tail -50 /usr/local/apache-tomcat-7.0.57/logs/catalina.out
!!!动态查看tomcat日志
tail -f  /usr/local/apache-tomcat-7.0.57/logs/catalina.out

2). 查询系统进程


我们也可以通过Linux系统的查看系统进程的指令,来判定Tomcat进程是否存在,从而判定Tomcat是否启动。执行如下指令:

!!!常用


ps -ef|grep tomcat


image.png

说明:


ps命令是linux下非常强大的进程查看命令,通过ps -ef可以查看当前运行的所有进程的详细信息


“|” 在Linux中称为管道符,可以将前一个命令的结果输出给后一个命令作为输入


使用ps命令查看进程时,经常配合管道符和查找命令 grep 一起使用,来查看特定进程


1.3.3 防火墙操作

前面我们已经通过日志的方式及查看系统进程的方式,验证了Tomcat服务已经正常启动,接下来我们就可以尝试访问一下。访问地址:

(注:这是你服务器ip)http://192.168.138.130:8080,我们发现是访问不到的。


image.png


原因就在于Linux系统的防火墙,系统安装完毕后,系统启动时,防火墙自动启动,防火墙拦截了所有端口的访问。操作防火墙具体指令如下:


image.png



注意: 上面我们也提到了,直接关闭系统的防火墙,是不建议的,因为这样会造成系统不安全。


B. 开放Tomcat的端口号8080


执行指令:

注:如果想开放别的端口就把8080换成想开放的端口,比如redis的6379


①. 先开启系统防火墙
systemctl start firewalld
②. 再开放8080端口号
firewall-cmd --zone=public --add-port=8080/tcp --permanent
③. 重新加载防火墙
firewall-cmd --reload

执行上述的操作之后,就开放了当前系统中的8080端口号,再次访问Tomcat。


1.3.4 停止Tomcat

在Linux系统中,停止Tomcat服务的方式主要有两种:


1). 运行Tomcat提供的脚本文件


在Tomcat安装目录下有一个bin目录,这个目录中存放的是tomcat的运行脚本文件,其中有一个脚本就是用于停止tomcat服务的。


image.png


我们可以切换到bin目录,并执行如下指令,来停止Tomcat服务:


sh shutdown.sh
./shutdown.sh

2). 结束Tomcat进程


image.png


我们可以先通过 ps -ef|grep tomcat 指令查看tomcat进程的信息,从进程信息中获取tomcat服务的进程号。然后通过kill -9 的形式,来杀死系统进程。


sh shutdown.sh
./shutdown.sh


通过上述的指令,我们可以获取到tomcat的进程号为 79947。接下来,我们就可以通过指令 ,来杀死tomcat的进程 :


kill -9 79947

执行完上述指令之后,我们再访问Linux系统中的Tomcat,就访问不到了。


注意:


kill命令是Linux提供的用于结束进程的命令,-9表示强制结束


注意 :


虽然上述讲解的两种方式,都可以停止Tomcat服务,但是推荐使用第一种方式(./shutdown.sh)执行脚本来关闭tomcat服务,如果通过第一种方式停止不了tomcat了,这个时候,我们可以考虑使用第二种方式,强制杀死进程。

目录
打赏
0
1
0
0
9
分享
相关文章
用户登录前后端开发(一个简单完整的小项目)——SpringBoot与session验证(带前后端源码)全方位全流程超详细教程
文章通过一个简单的SpringBoot项目,详细介绍了前后端如何实现用户登录功能,包括前端登录页面的创建、后端登录逻辑的处理、使用session验证用户身份以及获取已登录用户信息的方法。
650 2
用户登录前后端开发(一个简单完整的小项目)——SpringBoot与session验证(带前后端源码)全方位全流程超详细教程
Springboot3新特性:开发第一个 GraalVM 本机应用程序(完整教程)
文章介绍如何在Spring Boot 3中利用GraalVM将Java应用程序编译成独立的本机二进制文件,从而提高启动速度、减少内存占用,并实现不依赖JVM运行。
452 1
Springboot3新特性:开发第一个 GraalVM 本机应用程序(完整教程)
SpringBoot项目部署打包好的React、Vue项目刷新报错404
本文讨论了在SpringBoot项目中部署React或Vue打包好的前端项目时,刷新页面导致404错误的问题,并提供了两种解决方案:一是在SpringBoot启动类中配置错误页面重定向到index.html,二是将前端路由改为hash模式以避免刷新问题。
401 1
GitHub-Actions-SpringBoot项目部署
通过以上配置,当代码推送到GitHub仓库时,GitHub Actions将自动执行构建和部署过程,实现持续集成和持续部署。这不仅提高了开发效率,还减少了手动部署的风险。确保每一步操作都正确无误,可以避免常见的CI/CD问题。
69 14
|
4月前
|
Springboot+shiro,完整教程,带你学会shiro
这篇文章提供了一个完整的Apache Shiro与Spring Boot结合使用的教程,包括Shiro的配置、使用以及在非Web和Web环境中进行身份验证和授权的示例。
215 2
Springboot+shiro,完整教程,带你学会shiro
Springboot整合shiro,带你学会shiro,入门级别教程,由浅入深,完整代码案例,各位项目想加这个模块的人也可以看这个,又或者不会mybatis-plus的也可以看这个
本文详细讲解了如何整合Apache Shiro与Spring Boot项目,包括数据库准备、项目配置、实体类、Mapper、Service、Controller的创建和配置,以及Shiro的配置和使用。
945 1
Springboot整合shiro,带你学会shiro,入门级别教程,由浅入深,完整代码案例,各位项目想加这个模块的人也可以看这个,又或者不会mybatis-plus的也可以看这个
|
4月前
|
springboot的缓存和redis缓存,入门级别教程
本文介绍了Spring Boot中的缓存机制,包括使用默认的JVM缓存和集成Redis缓存,以及如何配置和使用缓存来提高应用程序性能。
167 1
springboot的缓存和redis缓存,入门级别教程
毕设项目&课程设计&毕设项目:springboot+jsp实现的房屋租租赁系统(含教程&源码&数据库数据)
本文介绍了一款基于Spring Boot和JSP技术的房屋租赁系统,旨在通过自动化和信息化手段提升房屋管理效率,优化租户体验。系统采用JDK 1.8、Maven 3.6、MySQL 8.0、JSP、Layui和Spring Boot 2.0等技术栈,实现了高效的房源管理和便捷的租户服务。通过该系统,房东可以轻松管理房源,租户可以快速找到合适的住所,双方都能享受数字化带来的便利。未来,系统将持续优化升级,提供更多完善的服务。
毕设项目&课程设计&毕设项目:springboot+jsp实现的房屋租租赁系统(含教程&源码&数据库数据)
毕设项目&课程设计&毕设项目:基于springboot+vue实现的在线考试系统(含教程&源码&数据库数据)
本文介绍了一个基于Spring Boot和Vue.js实现的在线考试系统。随着在线教育的发展,在线考试系统的重要性日益凸显。该系统不仅能提高教学效率,减轻教师负担,还为学生提供了灵活便捷的考试方式。技术栈包括Spring Boot、Vue.js、Element-UI等,支持多种角色登录,具备考试管理、题库管理、成绩查询等功能。系统采用前后端分离架构,具备高性能和扩展性,未来可进一步优化并引入AI技术提升智能化水平。
毕设项目&课程设计&毕设项目:基于springboot+vue实现的在线考试系统(含教程&源码&数据库数据)
SpringBoot日志全方位超详细手把手教程,零基础可学习 日志如何配置及SLF4J的使用......
本文是关于SpringBoot日志的详细教程,涵盖日志的定义、用途、SLF4J框架的使用、日志级别、持久化、文件分割及格式配置等内容。
307 0
SpringBoot日志全方位超详细手把手教程,零基础可学习 日志如何配置及SLF4J的使用......
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等