Spring boot部署发布到linux的操作方法

限制条件:

The default script supports most Linux distributions and is tested on CentOS and Ubuntu. Other platforms, such as OS X and FreeBSD, will require the use of a custom embeddedLaunchScript.

当前文档适用于 CentOS and Ubuntu,其他平台需要定制脚本

1、部署发布

1.1 打包

maven打包成执行文件

<plugin>
 <groupId>org.springframework.boot</groupId>
 <artifactId>spring-boot-maven-plugin</artifactId>
 <configuration>
  <executable>true</executable>
 </configuration>
</plugin> 

Gradle设置

springBoot {
 executable = true
} 

You can then run your application by typing ./my-application.jar (where my-application is the name of your artifact).

打包完成后,可以使用./my-application.jar 运行

1.2 原理

linux下查看文件格式为一个bshell可执行文件

[root@i-2cjt6k6n ~]# file audit-console-1.0.0.jar
audit-console-1.0.0.jar: Bourne-Again shell script text executable 

查看文件内容

vi audit-console-1.0.0.jar

文件开头:

shell与执行jar内容的分割:

可以看到,非常高的技巧,jar包包装为shell可执行文件,另外可以加载自己运行

1.3 发布为一个服务

 ln -s /var/myapp/myapp.jar /etc/init.d/myapp
service myapp start

总结

以上所述是小编给大家介绍的Spring boot部署发布到linux的操作方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

(0)

相关推荐

  • 使用linux部署Spring Boot程序

    SpingBoot的学习总算告一段落了,但它还留给了我们一个疑问,那就是程序在linux服务器上应该怎么部署?使用命令启动程序后如果ssh断开了程序会不会被shutdown?对于第一个问题比较好解决,只需要保证jdk安装正确就不会有太大问题.棘手的问题是后面这个,解决问题的关键就是要保证程序以守护进程(后台方式)运行.这次就分享下linux下如何正确部署程序 为了解决这个问题,我查阅网上的资料找到了下面3种解决方案 1   把jar包弄成系统服务(不推荐) 这种方法缺点也比较明显,那就是容易出现

  • spring boot linux启动方式详解

    前台启动 java -jar XXX.jar 后台启动 java -jar xxx.jar & 区别:前台启动ctrl+c就会关闭程序,后台启动ctrl+c不会关闭程序 制定控制台的标准输出 java -jar xxx.jar > catalina.out 2>&1 & catalina.out将标准输出指向制定文件catalina.out 2>&1 输出所有的日志文件 & 后台启动  脚本启动 #!/bin/sh #功能简介:启动上层目录下的ja

  • Linux下部署springboot项目的方法步骤

    最近在研究将springboot项目部署到Linux服务器上,由于springboot是内嵌了tomcat,所以可以直接将项目打包上传至服务器上. 1.在pom文件中添加springboot的maven插件 <build> <plugins> <plugin> <groupid>org.springframework.boot</groupid> spring-boot-maven-plugin</artifactid> </p

  • springboot打包部署到linux服务器的方法

    1.由于springboot集成了tomcat,所以打包的时候不再使用war,而是使用jar <groupId>cn</groupId> <artifactId>back</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>jar</packaging> 2.将springboot启动类添加继承SpringBootServletInitialize

  • springboot 在linux后台运行的方法

    首先需要进到自己springboot项目的根目录,然后执行如下linux命令 nohup java -jar 自己的springboot项目.jar >日志文件名.log 2>&1 & 命令详解: nohup:不挂断地运行命令,退出帐户之后继续运行相应的进程. >日志文件名.log:是nohup把command的输出重定向到当前目录的指定的"日志文件名.log"文件中,即输出内容不打印到屏幕上,而是输出到"日志文件名.log"文件中

  • Spring boot部署发布到linux的操作方法

    限制条件: The default script supports most Linux distributions and is tested on CentOS and Ubuntu. Other platforms, such as OS X and FreeBSD, will require the use of a custom embeddedLaunchScript. 当前文档适用于 CentOS and Ubuntu,其他平台需要定制脚本 1.部署发布 1.1 打包 maven打

  • 把spring boot项目发布tomcat容器(包含发布到tomcat6的方法)

    spring boot因为内嵌tomcat容器,所以可以通过打包为jar包的方法将项目发布,但是如何将spring boot项目打包成可发布到tomcat中的war包项目呢? 1. 既然需要打包成war包项目,首先需要在pom.xml文件中修改打包类型,将spring boot默认的<packaging>jar</packaging>修改为<packaging>war</packaging>形式: 2. 其次spring boot的web项目中内嵌tomca

  • 从零开始让你的Spring Boot项目跑在Linux服务器

    目录 1 搭建Linux服务器 1.1 购买阿里云服务器或安装虚拟机 1.2 安装JDK1.8(CentOS 8为例) 1.3 安装MySQL 1.4 安装Maven(非必要) 2 项目部署运行 2.1 项目编译打包(Windows环境下打包成jar文件) 2.2 部署运行 2.3 注意事项 2.4 常见问题 总结 1 搭建Linux服务器 1.1 购买阿里云服务器或安装虚拟机 这里建议是CentOS 7.X或CentOS 8.X,当然其他的Linux如deepin.Ubuntu也可以,只是软件

  • 详解Spring Boot 部署jar和war的区别

    本文介绍了Spring Boot 部署jar和war两种方式的区别,分享给大家,具体如下: 1. packaging的方式不同,一种设置成jar一种是war <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org

  • Spring Boot 项目发布到 Tomcat 服务器的操作步骤

    第 1 步:将这个 Spring Boot 项目的打包方式设置为 war. <packaging>war</packaging> SpringBoot 默认有内嵌的 tomcat 模块,因此,我们要把这一部分排除掉. 即:我们在 spring-boot-starter-web 里面排除了 spring-boot-starter-tomcat ,但是我们为了在本机测试方便,我们还要引入它,所以我们这样写: <dependency> <groupId>org.s

  • 如何把spring boot应用发布到Harbor

    这篇文章主要介绍了如何把spring boot应用发布到Harbor,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 settings.xml配置 <server> <id>docker-hub</id> <username>admin</username> <password>Harbor12345</password> </server> pom.xml配置

  • spring boot 部署为jar包的方法示例

    前言 一直在ide中敲代码,使用命令行 mvn spring-boot:run 或者 gradlew bootRun 来运行spring boot项目.想来放到prod上面也应该很简单.然而今天试了下,各种问题.最大错误是1.4的bug: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jp

  • 详解Spring Boot 部署与服务配置

    spring Boot 其默认是集成web容器的,启动方式由像普通Java程序一样,main函数入口启动.其内置Tomcat容器或Jetty容器,具体由配置来决定(默认Tomcat).当然你也可以将项目打包成war包,放到独立的web容器中(Tomcat.weblogic等等),当然在此之前你要对程序入口做简单调整. 项目构建我们使用Maven或Gradle,这将使项目依赖.jar包管理.以及打包部署变的非常方便. 一.内嵌 Server 配置 Spring Boot将容器内置后,它通过配置文件

  • Spring Boot Gradle发布war到tomcat的方法示例

    1. 确保你项目能编译通过,安装java jdk 环境填写环境变量 2. 添加SpringBootServletInitializer的子类重写configure 这点是很坑爹的,比如说发布PHP之类的,或者其他的,一般开发的跟发布的没什么东西不一样,spring非要加这个才行,我之前没加,就复制的war到tomcat webapps目录就不行 package contacts; import org.springframework.boot.SpringApplication; import

  • Spring Boot部署到Tomcat过程中遇到的问题汇总

    前言 Spring Boot项目一般都是内嵌tomcat或者jetty服务器运行,很少用war包部署到外部的服务容器,即使放到linux中,一般也是直接启动Application类,但是有些时候我们需要部署到外部的服务器,这对于Spring Boot来说却有点麻烦 下面就记录下自己部署的第一个SpringBoot项目到Tomcat中遇到的问题,三个地方需要注意:头疼-- 详细如下: 1.SpringBoot有自己内置Tomcat容器,所以要告诉它不使用内置容器,不指定Tomcat版本配置如下:

随机推荐