Spring Boot 部署

一.使用命令行java -jar 常驻

nohup java -jar spring-boot-1.0-SNAPSHOT.jar > log.file 2>&1 &

其中spring-boot-1.0-SNAPSHOT.jar为上传的jar包名

关闭通过ps -aux | grep spring 找到pid.用kill -9 [pid]结束进程

二.使用Linux服务的方式启动、停止、重启

1、首先在 pom.xml 中配置插件

    <build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<executable>true</executable>
</configuration>
</plugin>
</plugins>
</build> 特别注意一下 <executable>true</executable>

2、然后正常使用 mvn clean package -Dmaven.test.skip=true 将工程打成jar包

3、上传jar包到服务器,假设部署路径为 /var/apps/myapp.jar ,使用命令做一个软连接到 /etc/init.d 目录,命令:

ln -s /var/apps/myapp.jar /etc/init.d/myapp

其中 /etc/init.d/myapp最后的 myapp 可以是别的名字,这个就是服务名,我们后面使用 service [服务名] start 来启动(下面有说明)。

4、给jar文件授予可执行权限,命令:

chmod +x myapp.jar

5、接下来,就可以使用我们熟悉的 service myapp start|stop|restart|status 来对应用进行启停了。

执行命令后将得到形如 Started|Stopped [PID] 的结果反馈。

默认PID文件路径:/var/run/appname/appname.pid

默认服务日志文件路径:/var/log/appname.log(可以通过下面.conf 的方式修改LOG_FOLDER)

6、使用自定义的.conf文件来变更默认配置,方法如下:

在jar包相同路径下创建一个.conf文件,名称应该与.jar的名称相同,如myapp.conf(如果我们打包的文jar文件为 myapp-1.0.0.jar 那么这里的conf文件也应该是 myapp-1.0.0.conf),其内容配置可以如下:

JAVA_HOME=/usr/local/jdk
JAVA_OPTS=-Xmx1024M
LOG_FOLDER=/data/logs/myapp

注:LOG_FOLDER 对应的文件夹目录要必须存在,如果目录不存在,服务并不会自从创建目录。

华丽丽的分割线

如果你是CentOS 7或红帽7以上,你还可以用下面的方法处理,为什么要用这样的方法(请自行研究),这里直接提供结果,哈哈

编辑服务文件 vim /usr/lib/systemd/system/myapp.service

[Unit]
Description=frbao-publicity
After=network.target [Service]
WorkingDirectory=/var/apps/myapp
ExecStart=/usr/local/java/bin/java -Dsun.misc.URLClassPath.disableJarChecking=true -jar /var/apps/myapp.jar
ExecStop=kill $MAINPID
Restart=always [Install]
WantedBy=multi-user.target

使用Linux 7 以后服务新的启动方式,相关命令

启动
systemctl start myapp
停止
systemctl stop myapp
重启
systemctl restart myapp
查看日志
journalctl -u myapp

Spring Boot jar包linux服务器部署的更多相关文章

  1. spring boot jar包 linux 部署

    前提: jar包路径:/usr/local/lib/app/app.jar 1.首先先用vi创建文件 命令: cd /usr/local/lib/app/vi app-start.sh 2.在文件ap ...

  2. Spring Boot Jar包转War包 部署到Tomcat下

    原文:https://my.oschina.net/sdlvzg/blog/1562998 我们都知道springBoot中已经内置了tomcat,是不需要我们额外的配置tomcat服务器的,但是有时 ...

  3. 关于spring boot jar包与war包的问题

    此文为转载:http://mrlee23.iteye.com/blog/2047968 在开发调试完成之后,可以将应用打成JAR包的形式,在Eclipse中可以直接使用Maven插件的package命 ...

  4. eclipse生成spring boot jar包

    1.右击项目,选择Run As - Maven clean 2.右击项目,选择Run As - Maven install 3.成功后 会在项目的target文件夹下生成jar包 4.将打包好的jar ...

  5. spring boot jar包替换报错之Unable to open nested entry 'BOOT-INF/lib/cache-api-0.4.jar'.

    spring boot用layout ZIP打出来的包能够支持外部classpath,但是当用rar/7zip替换其中的jar后,报下列错误: Unable to open nested entry ...

  6. Spring Boot应用的打包和部署

    传统的Web应用在发布之前通常会打成WAR包,然后将WAR包部署到Tomcat等容器中使用,而通过前面的学习我们已经知道,Spring Boot应用既能以JAR包的形式部署,又能以WAR包的形式部署. ...

  7. linux服务器部署tomcat和Nginx

    项目需要,申请了三台测试机器,好在测试机里面光秃秃的什么都没有,我就可以好好的学习一把玩一把了!接下来以图文的形式讲一下我所碰到的坑以及小小的收获吧! 一.准备工作 首先你得有一台可以玩的linux服 ...

  8. spring相关jar包的作用讲解(转)

    Spring各个jar包作用 原文链接:https://www.cnblogs.com/1995hxt/p/5255210.html    Spring AOP:Spring的面向切面编程,提供AOP ...

  9. Linux服务器部署系列之八—Sendmail篇

    Sendmail是目前Linux系统下面用得最广的邮件系统之一,虽然它存在一些不足,不过,目前还是有不少公司在使用它.对它的学习,也能让我们更深的了解邮件系统的运作.下面我们就来看看sendmail邮 ...

随机推荐

  1. (luogu P1594)护卫队[TPLY]

    (luogu P1594) 护卫队 题目链接 https://www.luogu.org/problemnew/show/P1594 很好的一个模型 题目大意 有一个有序的车队,要求将其分成若干段,每 ...

  2. 【Luogu1919】 A*B Problem升级版(FFT)

    题面戳我 题解 把每个数都直接看做一个多项式,每一位就是一项 现在求用FFT求出卷积 然后考虑一下进位就可以啦 #include<iostream> #include<cstdio& ...

  3. [COGS2701]:动态树

    题面 传送门 Sol LCT维护子树和 # include <bits/stdc++.h> # define IL inline # define RG register # define ...

  4. WC2006水管局长(加强)

    倒过来就变成了加边 然后就直接LCT # include <stdio.h> # include <stdlib.h> # include <iostream> # ...

  5. LightOJ1341 Aladdin and the Flying Carpet

    题意 给一对数字 a,b ,a是一个长方形的面积,问有多少种整数的边的组合可以组成面积为a的长方形,要求最短的边不得小于b 数据组数T<=4000, a,b<=10^12 Solution ...

  6. 8Manage:“消费升级”缘何剑指企业一体化管理变革?

    [导读]提到消费升级,大家都会想起美学.个性化.品质等标签,近年来经济发展所伴随的消费需求转型在逐渐凸显,开始从粗狂型到精细化,如:关注产品性价比.服务个性化等内容.企业在消费升级下应该如何应对呢?8 ...

  7. 如何在WordPress文本小工具中使用PHP

    只需添加以下代码片段到你当前主题的functions.php文件 add_filter('widget_text', 'php_text', 99); function php_text($text) ...

  8. Spring Boot 系列(八)@ControllerAdvice 拦截异常并统一处理

    在spring 3.2中,新增了@ControllerAdvice 注解,可以用于定义@ExceptionHandler.@InitBinder.@ModelAttribute,并应用到所有@Requ ...

  9. SparkHiveContext和直接Spark读取hdfs上文件然后再分析效果区别

    最近用spark在集群上验证一个算法的问题,数据量大概是一天P级的,使用hiveContext查询之后再调用算法进行读取效果很慢,大概需要二十多个小时,一个查询将近半个小时,代码大概如下: try: ...

  10. 设计模式——单例设计模式(C++实现)

    #ifndef SINGLETONHOLDER_INC #define SINGLETONHOLDER_INC template<class T> class SingletonHolde ...