在之前的博文《详解intellij idea搭建SpringBoot》介绍了idea搭建SpringBoot的详细过程, 并在《CentOS安装Tomcat》中介绍了Tomcat的安装,前面几篇文章实际上已经充分准备好了部署Linux的必要条件。那么今天来看看如何在CentOS部署SpringBoot,让你的SpringBoot在服务器上跑起来。

vLinux部署springboot

从0到1,5步走,在Linux Tomcat部署springboot:

1. 《CentOS安装FTP服务》

2. 《CentOS安装Java JDK》

3. 《CentOS安装Tomcat》

4. 《详解intellij idea搭建SpringBoot》

5. 《SpringBoot入门教程(二)CentOS部署SpringBoot项目从0到1》

vIntelliJ IDEA打包

1.1 设置packaging jar 如下图:

1.2 编译插件, 如果是按照《详解intellij idea搭建SpringBoot》建立的springboot模板则可跳过此步骤

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

1.3 在IntelliJ IDEA的顶部右边选择“Edit Configurations”,并添加一个Maven配置

如上图,依次执行A、B、C

1.4 然后在Command line中输入“clean package”, 然后点击绿色的三角图标运行。如下图所示:

1.5 打包成功,如下图所示

vspringboot部署CentOS

2.1 文件传输至CentOS服务器。

如果FileZilla连接centos有问题的,可以看看《CentOS安装FTP服务》

2.2 到达jar包放置的位置,执行: java -jar zuche-0.0.1-SNAPSHOT.jar

如果需要配置端口号的话,就在后面加上java -jar zuche-0.0.1-SNAPSHOT.jar --server.port=80

如上图,表示部署成功。

2.3 在客户端电脑打开浏览器输入地址 http://10.168.11.106:8080/index 没有配置端口的话,就是默认的。

OK,得到的效果与《详解intellij idea搭建SpringBoot》演示的本地效果一致。

2.4 需要注意的是,如果在上面部署了80端口的jar包应用,下次再部署的时候会提示80端口被占用。

错误信息:ERROR 48608 --- [ main] o.apache.catalina.core.StandardService : Failed to start connector [Connector[HTTP/1.1-80]]

查看80端口号是否在使用中lsof -i:80

找到进程号35986 ps 35986

杀掉进程kill -9 35986

linux命令行本地访问部署tomcat目录curl -i localhost:8080

v相关常用命令

3.1 查看Tomcat的目录 sudo find / -name *tomcat*

root权限下,从根目录递归式查找名称中包含tomcat字段的文件名称,也许会出来好多,但是也应该能够定位到Tomcat的位置了。

如果万一不能很确定目录是否是Tomcat目录的话,可以找可能是Tomcat的目录,然后ls看看目录内的结构。

3.2 查看运行时的实时日志 tail -f catalina.out

3.2.1 tail 命令从指定点开始将文件写到标准输出.使用tail命令的-f选项可以方便的查阅正在改变的日志文件,tail -f filename会把filename里最尾部的内容显示在屏幕上,并且不但刷新,使你看到最新的文件内容. Ctrl+c 是退出tail命令。

3.2.2 格式:tail[必要参数][选择参数][文件]

3.2.3 功能:用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。

3.2.4 参数:

-f 循环读取
-q 不显示处理信息
-v 显示详细的处理信息
-c<数目> 显示的字节数
-n<行数> 显示行数
--pid=PID 与-f合用,表示在进程ID,PID死掉之后结束.
-q, --quiet, --silent 从不输出给出文件名的首部
-s, --sleep-interval=S 与-f合用,表示在每次反复的间隔休眠S秒

3.2.5 示例,显示文件末尾最后5行内容 tail -n 5 catalina.2018-10-07.log

3.3 查看端口信息netstat -tln

3.4 查看Tomcat进程信息ps -ef|grep tomcat

3.5 查看当前的工作目录(pwd:print working directory)pwd

3.6 windows查看Tomcat端口 netstat -ano|findstr 8080

3.7 Linux更改网络IP

3.7.1 进入网络配置目录 cd /etc/sysconfig/network-scripts

3.7.2 编辑配置文件 vim ifcfg-ens33

保证服务器(虚拟机)和本机在同一个IP段。重要重要重要!!!

v博客总结

《CentOS安装FTP服务》, 到     《CentOS安装Java JDK》      到      《CentOS安装Tomcat》      到           到     《详解intellij idea搭建SpringBoot》       《SpringBoot入门教程(二)CentOS部署SpringBoot项目从0到1》

通过IntelliJ IDEA打包spring boot工程再部署到CentOS服务器,从0到1全部讲完了。

作  者:请叫我头头哥

出  处:http://www.cnblogs.com/toutou/

关于作者:专注于基础平台的项目开发。如有问题或建议,请多多赐教!

版权声明:本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接。

特此声明:所有评论和私信都会在第一时间回复。也欢迎园子的大大们指正错误,共同进步。或者直接私信

声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是作者坚持原创和持续写作的最大动力!

SpringBoot入门教程(二)CentOS部署SpringBoot项目从0到1的更多相关文章

  1. SpringBoot入门教程(二十)Swagger2-自动生成RESTful规范API文档

    Swagger2 方式,一定会让你有不一样的开发体验:功能丰富 :支持多种注解,自动生成接口文档界面,支持在界面测试API接口功能:及时更新 :开发过程中花一点写注释的时间,就可以及时的更新API文档 ...

  2. SpringBoot入门教程(二十一)IntelliJ IDEA配置Quartz启动项

    本地运行:

  3. SpringBoot进阶教程(二十九)整合Redis 发布订阅

    SUBSCRIBE, UNSUBSCRIBE 和 PUBLISH 实现了 发布/订阅消息范例,发送者 (publishers) 不用编程就可以向特定的接受者发送消息 (subscribers). Ra ...

  4. SpringBoot入门教程(三)通过properties实现多个数据库环境自动切换配置

    前面的文章已经介绍了CentOS部署SpringBoot项目从0到1的详细过程,包括Linux安装ftp.Tomcat以及Java jdk的全部过程.这篇文章主要介绍关于springboot如何通过多 ...

  5. SpringBoot入门(二)——起步依赖

    本文来自网易云社区 在前一篇我们通过简单几步操作就生成了一个可以直接运行的Web程序,这是因为SpringBoot代替我们做了许多工作,概括来讲可以分为起步依赖和自动配置.这一篇先来看看起步依赖. 项 ...

  6. SpringBoot启动方式讲解和部署war项目到tomcat9

    1.SpringBoot启动方式讲解和部署war项目到tomcat9简介:SpringBoot常见启动方式讲解和部署war项目Tomcat 1.ide启动 2.jar包方式启动 maven插件: &l ...

  7. centos部署vue项目

    参考链接 nodejs服务器部署教程二,把vue项目部署到线上 打包 #在本地使用以下命令,打包 npm run build #打包之后本地会出现dist文件夹.将dist文件夹以及package.j ...

  8. 无废话ExtJs 入门教程二十一[继承:Extend]

    无废话ExtJs 入门教程二十一[继承:Extend] extjs技术交流,欢迎加群(201926085) 在开发中,我们在使用视图组件时,经常要设置宽度,高度,标题等属性.而这些属性可以通过“继承” ...

  9. 无废话ExtJs 入门教程二十[数据交互:AJAX]

    无废话ExtJs 入门教程二十[数据交互:AJAX] extjs技术交流,欢迎加群(521711109) 1.代码如下: 1 <!DOCTYPE html PUBLIC "-//W3C ...

随机推荐

  1. 动态规划——Frog Jump

    题目大意就是,给定一个数组,数组中数字从小到大排列,第一个元素一定是0,青蛙的初始位置就在0,后面依次从小到大排列,表示第几个石子,青蛙只有跳到最后一个石子上才算成功过河,而且青蛙第一次从0位置只能跳 ...

  2. NEERC训练实录

    听说这里可以做一些idea比较好的题.. 那就做做吧 2017-2018 ACM-ICPC, NEERC, Northern Subregional Contest A. Auxiliary Proj ...

  3. Hashlib加密,内置函数,安装操作数据库

    hashlib模块的md5加密: md5同样的内容加密后是一样的 md5加密后是不可逆的.即能加密,没办法解密. 撞库: 只是针对简单的,因为同样的内容加密后是一样的,难一点就不行了. 登录密码:注册 ...

  4. json字符串的拼接

    关于json字符串的解析与拼接,第一次接触,留下个笔记了.......解析,是改的代码,拼接是纯的,解析就不说了,笔记一下拼接了 关于解析主要分三部分,一个是第一层处理,一个是第二层处理,一个是进行& ...

  5. vue-cli利用router创建单页面

    一.创建脚手架 第一步 打开命令输入vue init webpack-simple vue-name 下载webpack-simple  (vue-name是你要创建的项目名称) 第二步 输入cd v ...

  6. python:os.path模块常用方法

    os.path模块主要用于文件的属性获取,在编程中经常用到,以下是该模块的几种常用方法.更多的方法可以去查看官方文档:http://docs.python.org/library/os.path.ht ...

  7. zstd --压缩工具

    Zstandard (也被称为zstd )是一款免费的开源,快速实时数据压缩程序,具有更好的压缩比 (约为 10:1). 安装 yum group install "Development ...

  8. 解决用友U8删除用户时提示“用户已启用”不能删除的问题

    USE UFSystem go DECLARE @cUser_Id NVARCHAR(20) SET @cUser_Id='用户的登录名' DELETE l FROM dbo.UA_TaskLog l ...

  9. gc笔记2

    空间分配担保:在发生MinorGC之前,虚拟机会检查老年代最大连续可用是否大于新生代所有对象的空间,如果这个条件成立,则minorgc时安全的

  10. Socket看法

    Socket通常也称做”套接字“,用于描述IP地址和端口,废话不多说,它就是网络通信过程中端点的抽象表示. Socket又称"套接字",应用程序通常通过"套接字" ...